Watch App NSBundle Localizing to Unexpected Languages

Originator:zack
Number:rdar://31324969 Date Originated:3/29/2017
Status:Open Resolved:
Product:Watch OS Product Version:WatchOS 3.1.3 (14S960)
Classification: Reproducible:Yes
 
Summary:
A Watch App on Watch OS 3 in a language not directly supported by an app can cause NSLocalizedString's to localize to unexpected languages. We can reproduce using the Swarm version in the iTunes Store (app id 870161082), but has also been reported in Apple forums for other apps (https://discussions.apple.com/thread/7678038?start=0&tstart=0 and https://discussions.apple.com/thread/7809154?start=0&tstart=0). Ideally, the watch would respect or at least offer the same functionality as the phone's "preferred languages" stack.

Though our steps to reproduce are somewhat contrived, this also occurs for users who have set their watch up "out of the box" in an app-unsupported language. In those cases, the language to which the app falls back seems to be undefined (users have reported some strings in English and some strings in Japanese, for example).

Steps to Reproduce:
1. Install an app to both your watch and phone (we reproduced with https://itunes.apple.com/us/app/foursquare-swarm-the-check-in-app/id870161082?mt=8)
2. Set your watch and phone's language to one not supported by the app, and set the phone's fallback language to one that is supported but different than the language you were in to begin with. Specifically for our testing:
- Initial state had phone and watch in English
- Use the phone's settings to change the phone's system language to Swedish and make German the next preferred language.
- Use the watch app to set the watch's system language to Swedish
3. Open test app on phone, confirm that it displays, as intended, in the fallback language (in our testing, German)
4. Open the watch app, observe actual results instead of expected results

Expected Results:
The watch app should appear in German (the user's top preferred language which is supported by the app).

Actual Results:
In our testing, the watch app appears in English. In the wild, users who have never had their watch in English have reported French or Japanese appearing instead.

Version:
WatchOS 3.1.3 (14S960)

Notes:


Configuration:
This occurs when the watch is in a language not supported by a given app. The fallback language is not well defined or controllable by the user.

Attachments:
'IMG_9830.PNG' and 'IMG_9831.PNG' were successfully uploaded.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!