Android: broken localized strings for cast_intro_overlay_button_text |
||
Issue description
This was discovered by manually inspecting the localized strings embedded inside MonochromePublic.apk.
The Android resource string identified by the name cast_intro_overlay_button_text and defined in [1] doesn't have proper localizations, i.e.:
- The resources.arsc does *not* contain a value for the (default)
config for this named resource. Even though it is defined
in the corresponding res/values/strings.xml file [2]
Note that it provides a value for en-GB (British English) though,
but not for en-US, which is the default on Android!
- The value is all translations, as found in resources.arsc is
otherwise "@android:string/ok", except for the Farsi locale (fa)
where it is "\u202A@android:string/ok". Note that \u202A
corresponds to the right-to-left directional indicator.
- "@android:string/ok" looks like a resource reference, which are
normally not supported in Android string resources (but can be
used as attribute values for other XML elements though).
Note that no other resource string in the APK has any missing default value, or uses string references.
Likely reason for the current behaviour:
- aapt rejected the string reference for some reason for the
default config, but not the translations?
- a build or packaging error from the upstream
com.google.android.gms.play_services.cast_framework library?
[1] https://cs.chromium.org/chromium/src/out/android-Debug/gen/third_party/android_deps/com_google_android_gms_play_services_cast_framework_java/res/
[2] https://cs.chromium.org/chromium/src/out/android-Debug/gen/third_party/android_deps/com_google_android_gms_play_services_cast_framework_java/res/values/values.xml?rcl=56b8e8078938e9c3175b5a07de9130846bdd14ee&l=109
,
Jan 11
Available, but no owner or component? Please find a component, as no one will ever find this without one.
,
Jan 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/df9e5cfddd192a7687f19626b35dfe25e843eb1c commit df9e5cfddd192a7687f19626b35dfe25e843eb1c Author: David 'Digit' Turner <digit@google.com> Date: Tue Jan 15 14:59:15 2019 android: Dump localized strings without default configs. The dump_apk_resource_strings.py script crashes when it encounters a resources table that contains a localized string without a value for the default configuration. This is obviously a packaging bug (see below), but should not prevent the script from working. This fixes the issue by faking a value of <MISSING_STRING_<id>>. This makes checking for these use cases obvious in the output. BUG=921001 R=benmason@chromium.org TBR=agrieve@chromium.org Change-Id: I9d408e776d19334eed03a42ddd266895f7628b26 Reviewed-on: https://chromium-review.googlesource.com/c/1411777 Reviewed-by: David Turner <digit@chromium.org> Reviewed-by: agrieve <agrieve@chromium.org> Commit-Queue: agrieve <agrieve@chromium.org> Cr-Commit-Position: refs/heads/master@{#622856} [modify] https://crrev.com/df9e5cfddd192a7687f19626b35dfe25e843eb1c/build/android/dump_apk_resource_strings.py |
||
►
Sign in to add a comment |
||
Comment 1 by digit@google.com
, Jan 11