A library that translates apps into 80 languages and automates settings
Auto App Translate
It is a library that translates apps into 80 languages and automates settings.
How to Use?
1. Setup the config file
dependencies:
easy_localization: ^3.0.2-dev
easy_localization_loader: ^1.0.0
app_auto_translation:
flutter:
assets:
- assets/localization.done.csv
2. Create the asset folder and insert the localization.csv file.
lozalization.csv file download
3. Config easy_localization library. Please refer to the official documentation.
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. Fill in the localization file.
Fill in str for the key value and the standard language (start translate language) column.
5. use tr() in your code for localization.
import 'package:easy_localization/easy_localization.dart';
tr('hello world')
6. Create a dart file in your project and paste the code below.
Location doesn’t matter.
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');
}
It works even if you don’t put the Google Translate api key, but you will soon reach the free limit. For a guide to getting the Google Translate api key, please refer to this document.