tencent_im_base 1.0.57 copy "tencent_im_base: ^1.0.57" to clipboard
tencent_im_base: ^1.0.57 copied to clipboard

unlisted

The I18N tool, for Tencent Cloud Chat temporarily.

Tencent Cloud Chat I18N Tool #

This tool is currently designed for Tencent Cloud Chat only. However, it will be available for all projects in the near future.

English, Simplified Chinese, Traditional Chinese, Japanese and Korean have been embedded in Tencent Cloud Chat TUIKit as the default interface languages.

Adding other interface languages or modifying the current language items are available for you, according to the instructions of this tutorial.

Using the default languages #

If only Chinese(both traditional and simplified), English, Japanese and Korean are needed for your application, please refer to this section.

Choosing device language #

No further steps are needed, as meeting device language can be automatically.

Pre-set the language manually #

If you tend to specify the language manually, please provide the target language Enum to init() in TIMUIKitCore.getInstance().

import 'package:tim_ui_kit/tim_ui_kit.dart';

final CoreServicesImpl _coreInstance = TIMUIKitCore.getInstance();

final isInitSuccess = await _coreInstance.init(
 language: LanguageEnum.en, // Enums as below
// ...Other configurations
);

Enum options for language:

enum LanguageEnum {
 zhHant, // Chinese, traditional
 zhHans, // Chinese, simplified
 en, // English
 ko, // korean
 ja // Japanese
}

Modify language dynamically #

Please just invoking I18nUtils(null, language);, while the language here should be set as the ISO 639 Language codes.

Example code:

I18nUtils(null, "en");

Need more languages / customize translation items #

Adding languages, apart from English, Simplified Chinese, Traditional Chinese, Japanese and Korean, or modifying some translation items words, can be referred to this section.

This solution only works for languages with a left-to-right reading direction. For small languages that read from right to left, such as Arabic, please fork our source code from our GitHub repository to complete the custom left and right mirroring Development adaptation, and import to your project manually.

Adding language translation files #

The key of this section is this part, that is, inject your custom internationalized language file into the Tencent Cloud Chat.

Get the language template

Run the following command, and choose A as instruction.

flutter pub run tencent_im_base

Now, all the pre-set default language files, as JSON, have been generated to your project, languages/ directory.

Duplicate for language files, based on the template you are most familiar with.

The newly duplicated language files should be named as strings_${language code}.i18n.json. While, ${language code} should be replaced by ISO 639 Language Codes. Such as, the file containing Danish language items should be named as strings_da.i18n.json.

Duplicate multiple language files, if you need to support multiple other languages.

Customize translations

Now, you can modify the language files generated in the previous step.

Open each language file, including the files you just duplicated, except strings_zh-Hans.i18n.json, translate or modify each value to target language, while keeping the md5 key unchanged.

After translation and modification, all the supported languages files, including those you duplicated and default, should be in the languages/ directory.

Activate those language files

Run the following command, and choose B as instruction.

flutter pub run tencent_im_base

After the script has finished, those customization languages are activated on your local Flutter environment.

If you are developing with a team collaboratively, or using DevOps pipeline compilation. You also need to execute this solution on your colleague's computer or in the DevOps pipeline compilation command script.

Choosing device language #

No further steps are needed, as meeting device language can be automatically.

Pre-set the language manually #

If you tend to specify the language manually, please provide the ISO 639 Language Codes of the language to init() in TIMUIKitCore.getInstance().

import 'package:tim_ui_kit/tim_ui_kit.dart';

final CoreServicesImpl _coreInstance = TIMUIKitCore.getInstance();

final isInitSuccess = await _coreInstance.init(
 extraLanguage: "ja", // ISO 639 Language Codes
// ...Other configurations
);

Modify language dynamically #

Please just invoking I18nUtils(null, language);, while the language here should be set as the ISO 639 Language codes.

Example code:

I18nUtils(null, "en");

Appendix: Language codes #

Language Code Language Code
Arabic ar Bulgarian bg
Croatian hr Czech cs
Danish da German de
Greek el English en
Estonian et Spanish es
Finnish fi French fr
Irish ga Hindi hi
Hungarian hu Hebrew he
Italian it Japanese ja
Korean ko Latvian lv
Lithuanian lt Dutch nl
Norwegian no Polish pl
Portuguese pt Swedish sv
Romanian ro Russian ru
Serbian sr Slovak sk
Slovenian sl Thai th
Turkish tr Ukrainian uk
Chinese (Simplified)) zh-Hans Chinese (Traditional) zh-Hant

Contact us #

If there's anything unclear or you have more ideas, feel free to contact us!

2
likes
0
pub points
81%
popularity

Publisher

verified publishercomm.qq.com

The I18N tool, for Tencent Cloud Chat temporarily.

Homepage

License

unknown (LICENSE)

Dependencies

fast_i18n, file, flutter, shell, tencent_cloud_chat_sdk

More

Packages that depend on tencent_im_base