corona-warn-app / cwa-app-android

Native Android app using the Apple/Google exposure notification API. The CWA development ends on May 31, 2023. You still can warn other users until April 30, 2023. More information:
https://coronawarn.app/en/faq/#ramp_down
Apache License 2.0
2.44k stars 496 forks source link

Enable app-dependent language setting (Android 13) #5468

Closed MikeMcC399 closed 1 year ago

MikeMcC399 commented 2 years ago

Avoid duplicates

Current Implementation

CWA Android is built for API 31 (Android 12) and uses the device's language setting (locale).

Screenshots

Android 13 screenshots with CWA installed showing (as expected) that App Language selection is not available in CWA Android 2.25.0:

App Languages

App Languages

Suggested Enhancement

Adapt the CWA Android app to target API 33 (Android 13) and implement Per-app language preferences.

Expected Benefits

More flexible language selection for users in a multi-lingual environment. iOS already has this capability (see https://github.com/corona-warn-app/cwa-app-android/issues/3489#issuecomment-824746939 from @Ein-Tim).

Note that if this is implemented, and there is no change to the Google Exposure Notifications API, then it could mean that messages from the Google API would be output in a different language to the ones output by the CWA app. This might not be a desirable configuration.

Related requests


Internal Tracking ID: EXPOSUREAPP-13953

MikeMcC399 commented 2 years ago
gitterman commented 2 years ago

Even Google Maps (from GOOGLE!) can be set to a different language other than the system language, and even on older android versions. So it is strange to me, why the corona warn app doesn't allow this. I suppose that the developers follow more some user unfriendly guidelines than usability. If an app which is only available in a non-English language is installed on a phone that is set to English as system language, it runs with its own non-English language. So I see not reason why an app which supports multiple languages must "auto-magically" use the system language. Let the user decide, not an automatic!

MikeMcC399 commented 2 years ago

@gitterman

In-app language setting is not standard in Android. Although you give the example of Google Maps having this functionality there are only six bundled apps in Android 13 which have been enhanced to use per-app languages settings (see screen shot in OP). Other apps from Google, like Google Drive, YouTube Music, Google Photos, etc. have not been enhanced with per-app language selection.

You said that you don't see a reason why CWA, which supports multiple languages, can't allow the user to choose. Well that is just the way that standard Android works. Anything else has to be added as additional programming effort. That is the reason for this feature request, so that the product owner and the developers can consider if there is a general need for this functionality and if development effort should be invested in providing for it, also considering the remaining expected life-time of the product.

MikeMcC399 commented 2 years ago

There is a YouTube video (5:30 duration) published on Sep 3, 2022 which explains the user story behind the need for in-app language preferences and the steps to implement in Android 13 (Codename: Tiramisu / API 33) and previous Android versions.

MikeMcC399 commented 1 year ago

Some commits in https://github.com/corona-warn-app/cwa-app-android/tree/feature/13779-Android-13 reference this issue (which does not mean that it will be released though).

MikeMcC399 commented 1 year ago

Since the pre-requisite of Android 13 support is not planned (see https://github.com/corona-warn-app/cwa-app-android/issues/5469#issuecomment-1371936091), then this enhancement can also not be planned.