自动应用翻译
这是一个将应用程序翻译成80种语言并自动进行设置的库。
如何使用?
1. 设置配置文件
dependencies:
easy_localization: ^3.0.2-dev
easy_localization_loader: ^1.0.0
app_auto_translation:
flutter:
assets:
- assets/localization.done.csv
2. 创建资源文件夹并插入 localization.csv 文件。
lozalization.csv 文件 下载
3. 配置 easy_localization 库。请参考 官方文档。
import 'package:app_auto_translation/callable/core_my/my_language_code/entity/flutter_support_language_locale.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:easy_localization_loader/easy_localization_loader.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await EasyLocalization.ensureInitialized();
runApp(
EasyLocalization(
supportedLocales: flutterLocalizeSupportLanguagesLocale,
path: 'assets/localization.csv',
assetLoader: CsvAssetLoader(), // <- important option for translation
fallbackLocale: const Locale('en', 'US'),
child: const MyApp()
),
);
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
localizationsDelegates: context.localizationDelegates,
supportedLocales: context.supportedLocales,
locale: context.locale,
home: MyHomePage()
);
}
}
4. 填写本地化文件。
5. 在您的代码中使用 tr() 进行本地化。
import 'package:easy_localization/easy_localization.dart';
tr('hello world')
6. 在您的项目中创建一个 dart 文件并粘贴以下代码。
位置不重要。
import 'package:auto_app_translate/auto_app_translate.dart';
main() {
AutoAppTranslate.translateAppCsvFile(
// start translate language
startLanguageCode: 'en',
// language code to skip translation
skipLanguageCodes: [],
// str to skip translation
skipStr: [],
// csv file path
appAssetsCsvPath: 'assets/localization.csv',
// google translate api key (https://translatepress.com/docs/automatic-translation/generate-google-api-key/)
apiKey: 'INPUT_YOUR_GOOGLE_TRANSLATE_API_KEY');
}
即使不填写 Google Translate API 密钥也能正常工作,但很快就会达到免费限制。有关获取 Google Translate API 密钥的指南,请参阅 本文档。





