Android app info localization not working

Hello,

Unity Editor 2022.3.5f1, Localization package 1.5.3, platform Android, empty project:
No matter what - I can’t build apk with desired localized app name and icons.

Name and icons always used from the player build settings.
In the compiled resources app_name has two locales: default and ‘en’. Default value is text from the player build settings (even if I select Use Fallback), ‘en’ value from the English locale.

Are there any specific steps to perform like custom manifest in player build settings or smth like that?

Thanks!

Are you using the localization package? Have you followed this? Android App Localization | Localization | 1.5.3

Yes, I’ve read and followed documentation.

We would need to take a look at your project. Please file a bug report : Unity QA: Building quality with passion

Turns out method Unity Editor.Localization.Platform.Android.Player.GenerateLocalizedIcon failed. The reason is texture import settings flag Read/Write. When it is off (even if just on one texture) then the whole localization build step fails. Despite that, build completes with a result Succeeded.

After fixing all icon textures localization build step works as expected.
:blush:

1 Like

To localize app name and icons in Unity for Android:

  1. Ensure Localization Package: Install Localization package (1.5.3) from the Package Manager.
  2. Set Up Localization: Create localization tables for app name and icons under Window > Asset Management > Localization Tables.
  3. Configure Player Settings:
  • Go to Edit > Project Settings > Player > Android.
  • Set Product Name and Icons for each language manually.
  1. Localized App Name:
  • Use a custom script to change the Product Name at runtime based on the selected locale.

csharp

PlayerSettings.productName = LocalizationSettings.StringDatabase.GetLocalizedString("AppName", "en");
  1. Localized Icons:
  • Set localized icons in Player Settings under Icon and swap them using scripts if needed.
  1. Custom Manifest:
  • For advanced localization, you might need a custom manifest to handle language-specific configurations.