osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.63k stars 1.01k forks source link

Unable to switch app language on Xiaomi and OnePlus devices #16990

Open Nine-Tailed opened 1 year ago

Nine-Tailed commented 1 year ago

Description

On xiaomi devices with miui 14 and android 13 stock firmware, it is impossible to change the language in osmand, since there is no such menu item in the system.

For these devices, it is proposed to leave the language selection item in the application.

And it also led to such an interesting bug described in the Russian-language chat telegram on Osmand: https://t.me/ruosmand/122271

Your Environment

OsmAnd Version: OsmAnd~ 4.5.0#35797m, Дата выпуска: 2023-04-17 Android version: 13 Device model: poco f3

scaidermern commented 1 year ago

Duplicate of #16938?

Nine-Tailed commented 1 year ago

Duplicate of #16938?

no, it was impossible to enable specific languages ​​there, but here the problem is that miui firmware does not support this feature of android 13.

dmpr0 commented 1 year ago

What language is used in this case?

Nine-Tailed commented 1 year ago

What language is used in this case?

The problem here is that the system does not have an item for selecting the language for individual applications, despite the fact that this is android 13. This is native firmware from the manufacturer.

Zirochkabila commented 1 year ago

@Nine-Tailed That is, OsmAnd displays the language that is set as the system language?

Nine-Tailed commented 1 year ago

@Nine-Tailed That is, OsmAnd displays the language that is set as the system language?

Yes. The only way to change the language for just the osmand is to export its settings and edit the general_settings.json file and set the preferred_locale parameter to the language value, then import the settings back into the osmand.

Have you received an update to miui 14 (android 13) on your poco x3 yet?

Zirochkabila commented 1 year ago

@Nine-Tailed Then, this behavior is caused by Android 13 and MIUI 14, most likely. Because in Pixel 4, there is no language selection option in the OsmAnd system either. Accordingly, the behavior is to some extent mentioned in https://github.com/osmandapp/OsmAnd/issues/16938 My device still has Android 12 and MIUI 13 - the device is old, and most likely, there will be no update.

vshcherb commented 1 year ago

Looks like it's a bug in MiUI so it's not possible to change, we hope MiUI will get it fixed https://www.reddit.com/r/PocoPhones/comments/111iw95/android_13s_perapp_language_not_implemented_in/

Nine-Tailed commented 1 year ago

Looks like it's a bug in MiUI so it's not possible to change, we hope MiUI will get it fixed https://www.reddit.com/r/PocoPhones/comments/111iw95/android_13s_perapp_language_not_implemented_in/

But why did Osmand transfer the language settings to the system, even if in Google maps the language is set directly in the application?

vshcherb commented 1 year ago

Good question, but we've started from Android 13 and further more it will be standard. Also it saves quite some memory during installation!

maraf24 commented 1 year ago

Looks like it's a bug in MiUI so it's not possible to change, we hope MiUI will get it fixed https://www.reddit.com/r/PocoPhones/comments/111iw95/android_13s_perapp_language_not_implemented_in/

This may not happen: https://xiaomi.eu/community/threads/miui-14-per-app-language-support.69022/#post-693207

vshcherb commented 1 year ago

This is also google play feature which allows to have per custom app specialization and download less.

maraf24 commented 1 year ago

The same problem (no per app language selector) has OxygenOS 13 (used in OnePlus phones). Although the producer is now offering Oxygen 13.1 with the feature implemented.

dmpr0 commented 1 year ago

ToDo

nyakze commented 10 months ago

You can get to this option in MIUI by using an app called Hidden Settings. Search for "Language" there and you will find per-app language setting.

NomarCub commented 8 months ago

@nyakze could you link this app here, please? @maraf24 where is it 13.1? I can't find it, and had a hard time finding info on this previously. Do you have a link to where OnePlus said they'll implement this?

nyakze commented 8 months ago

@nyakze could you link this app here, please? @maraf24 where is it 13.1? I can't find it, and had a hard time finding info on this previously. Do you have a link to where OnePlus said they'll implement this?

The app for miui / hyperos https://play.google.com/store/apps/details?id=com.netvor.hiddensettings In other Android (incl. Oxygen) you can find it in system - languages and input - app languages

NomarCub commented 8 months ago

I have no such setting (none of "system", "languages and input", "app languages"), only "Language and region". The app seems to find the hidden activity, but nothing happens when I click on it. Screenshot_2024-01-11-13-02-52-29_5163c01f28f8e2e9a9a8e8578063089b Thanks anyway!

nyakze commented 8 months ago

I have no such setting (none of "system", "languages and input", "app languages"), only "Language and region".

Which Android version are you on?

NomarCub commented 8 months ago

Android 13, OxygenOS 13.1. My phone is a OnePlus 8.

nyakze commented 8 months ago

Android 13, OxygenOS 13.1. My phone is a OnePlus 8.

Looks like it's not available on Oxygen, I suggest you to post this issue on OnePlus community forums

tswistak commented 7 months ago

Is it planned to revert language change to app settings? I can't find myself in the localized (Polish) version due to many strange translations (and I don't have enough time to contribute on Weblate).

I have a OnePlus 8 with Android 13 and no possibility to change app language in system settings. Posting on their Community makes no sense, because it was written there many times, that people miss this feature and they haven't changed anything. Maybe they added it on newer OS, but unfortunately, OP8 won't be updated anymore.

nyakze commented 7 months ago

The hidden settings app doesn't seem to work on hyperos 1.0 (a14) anymore to change app language. FYI.

nyakze commented 7 months ago

I have found an app that does this elegantly even for devices that doesn't have this function! "Dodo Pizza" app has a direct link to a system App Language setting of the Dodo Pizza app and it seem to open without a problem even on HyperOS. App in question: https://play.google.com/store/apps/details?id=ru.dodopizza.app

tswistak commented 7 months ago

Apps from Fossify work the same - there's an entry in in-app settings that opens system app language settings, and it works without any problem on OnePlus 8. It would be great if at least an option like that would be available in OsmAnd.