Assigned
Status Update
Comments
pe...@chromium.org <pe...@chromium.org> #2
Please fix this!!!. We have quite a few apps that cannot use GCM because of this.
kr...@chromium.org <kr...@chromium.org> #3
This should have a "high" priority, not a "medium" priority. The reason being that you cannot change the package name for apps already deployed to the app store. This means that any apps that have already been deployed with upper case package name are unable to use GCM. :-(
ro...@gmail.com <ro...@gmail.com> #4
This goes back to an issue with C2DM. It did not allow the package name permission to start with a capital letter either. Since Android allows the package name to start with a capital letter, this permission should be able to as well.
ro...@gmail.com <ro...@gmail.com> #5
Here is the excerpt from android package name documentation :
http://developer.android.com/guide/topics/manifest/manifest-element.html
"A full Java-language-style package name for the application. The name should be unique. The name may contain uppercase or lowercase letters ('A' through 'Z'), numbers, and underscores ('_'). However, individual package name parts may only start with letters."
Upper case letters should be ok.
"A full Java-language-style package name for the application. The name should be unique. The name may contain uppercase or lowercase letters ('A' through 'Z'), numbers, and underscores ('_'). However, individual package name parts may only start with letters."
Upper case letters should be ok.
[Deleted User] <[Deleted User]> #6
After doing a little more digging, the original post has the best description in the correct behavior. Currently ANY permission must not begin with a capital letter if and only if there is a dot operator inside of it. Permissions should be able to be created with capitalized names.
ro...@gmail.com <ro...@gmail.com> #7
Isn't there a way to do this yet?
It's really anoying for everyone, users and developers, to do a new app just for this issue
It's really anoying for everyone, users and developers, to do a new app just for this issue
kr...@chromium.org <kr...@chromium.org> #8
news ?
ro...@gmail.com <ro...@gmail.com> #9
DO AGREE...the same requirements as for Java package name should be used for permissions!
me...@chromium.org <me...@chromium.org> #10
결론이 난건가요?
ae...@chromium.org <ae...@chromium.org> #11
Any Update on this?
I need this feature too.
if the App is already in Store with the packagename "Myapplication.com" and you rename this Line: <permission android:name="myapplication.com.permission.C2D_MESSAGE" android:protectionLevel="signature" /> to a lower case letter, then it will work, but only for Devices with Android 4+.
Please fix this!
I need this feature too.
if the App is already in Store with the packagename "Myapplication.com" and you rename this Line: <permission android:name="myapplication.com.permission.C2D_MESSAGE" android:protectionLevel="signature" /> to a lower case letter, then it will work, but only for Devices with Android 4+.
Please fix this!
va...@chromium.org <va...@chromium.org> #12
You probably cannot fix this retroactively for devices that are already running non-supporting versions of Android, since there's no way to force an update in general. So to me it seems that the fix would be for the GP store to allow apps to rename their packages on an update from mixed case to all lower case, so long as nothing else changes and so long as there was not already another app with the resulting lower-case name. The store, being in the cloud, can fix this for almost everyone (except some very unfortunate hypothetical person who decided to have two apps with package names only distinguished by case). That should handle 99.9 percent of the cases.
js...@chromium.org <js...@chromium.org> #13
This bug has been marked as obsolete but there is no resolution provided.
js...@chromium.org <js...@chromium.org> #14
still opened and still no solution to this after years.
js...@chromium.org <js...@chromium.org> #15
Jeeeeeeez this is such a weird bug.
js...@chromium.org <js...@chromium.org> #16
Adding syg@ who co-posted https://v8.dev/features/intl-displaynames . It does not mention anything about Android having this issue.
js...@chromium.org <js...@chromium.org> #17
* region_tree flitering
https://source.chromium.org/chromium/chromium/src/+/master:third_party/icu/filters/android.json;drc=7852ffcb31b18c49b0ec694c26095c87d046700f;l=394?originalUrl=https:%2F%2Fcs.chromium.org%2F : Only English is supported.
https://source.chromium.org/chromium/chromium/src/+/master:third_party/icu/filters/android.json;drc=7852ffcb31b18c49b0ec694c26095c87d046700f;l=740?originalUrl=https:%2F%2Fcs.chromium.org%2F . : Only US display name is supported even for English.
* lang-tree exclusion; both script names and language names are excluded except for a few.
https://source.chromium.org/chromium/chromium/src/+/master:third_party/icu/filters/android.json;drc=7852ffcb31b18c49b0ec694c26095c87d046700f;l=1634?originalUrl=https:%2F%2Fcs.chromium.org%2F
BTW, the currency display name is supported.
* lang-tree exclusion; both script names and language names are excluded except for a few.
BTW, the currency display name is supported.
ft...@chromium.org <ft...@chromium.org> #18
the default option for fallback is "code" so currently on Android it is correctly fallback to the pass in code.
ft...@chromium.org <ft...@chromium.org> #19
We could add the region data into ICU
ft...@chromium.org <ft...@chromium.org> #20
[Empty comment from Monorail migration]
ft...@chromium.org <ft...@chromium.org> #21
[Empty comment from Monorail migration]
gi...@appspot.gserviceaccount.com <gi...@appspot.gserviceaccount.com> #22
The following revision refers to this bug:
https://chromium.googlesource.com/chromium/deps/icu/+/fbc6faf1c2c429cd27fabe615a89f0b217aa4213
commit fbc6faf1c2c429cd27fabe615a89f0b217aa4213
Author: Frank Tang <ftang@chromium.org>
Date: Tue Dec 07 22:37:53 2021
Add display names for languages and regions for Android
DisplayNames API in ECMA 402 [1] was not fully supported in v8 on Android
because language and region names were excluded in the ICU data
file for Android to save the download size.
Now that Android Chrome is not under the size pressure any more [2],
add back language and region names.
[1]https://tc39.es/ecma402/#intl-displaynames-objects
[2]https://bugs.chromium.org/p/chromium/issues/detail?id=1146288#c7
Bug: 1097432
Change-Id: Idb2828e5d2606c0f1388bdfc05ceeeec0858479d
Reviewed-on:https://chromium-review.googlesource.com/c/chromium/deps/icu/+/3321646
Reviewed-by: Jungshik Shin <jshin@chromium.org>
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/android_small/icudtl.dat
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/filters/android_extra.json
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/filters/android.json
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/android/icudtl.dat
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/android_small/icudtl_extra.dat
[modify]https://crrev.com/fbc6faf1c2c429cd27fabe615a89f0b217aa4213/filters/android_small.json
commit fbc6faf1c2c429cd27fabe615a89f0b217aa4213
Author: Frank Tang <ftang@chromium.org>
Date: Tue Dec 07 22:37:53 2021
Add display names for languages and regions for Android
DisplayNames API in ECMA 402 [1] was not fully supported in v8 on Android
because language and region names were excluded in the ICU data
file for Android to save the download size.
Now that Android Chrome is not under the size pressure any more [2],
add back language and region names.
[1]
[2]
Bug: 1097432
Change-Id: Idb2828e5d2606c0f1388bdfc05ceeeec0858479d
Reviewed-on:
Reviewed-by: Jungshik Shin <jshin@chromium.org>
[modify]
[modify]
[modify]
[modify]
[modify]
[modify]
gi...@appspot.gserviceaccount.com <gi...@appspot.gserviceaccount.com> #23
The following revision refers to this bug:
https://chromium.googlesource.com/chromium/src/+/0fd92171ebcc41f52e81d5105e3179510b085edd
commit 0fd92171ebcc41f52e81d5105e3179510b085edd
Author: Frank Tang <ftang@chromium.org>
Date: Tue Dec 14 00:11:13 2021
[intl] Fix Android DisplayNames by including data
DisplayNames API in ECMA 402 [1] was not fully supported in v8 on Android
because language and region names were excluded in the ICU data
file for Android to save the download size.
Now that Android Chrome is not under the size pressure any more [2],
add back language and region names.
Size Impact: Android +715K
[1]https://tc39.es/ecma402/#intl-displaynames-objects
[2]https://bugs.chromium.org/p/chromium/issues/detail?id=1146288#c7
Bug: 1097432
Change-Id: Iadd0aaf1437911fb26fd67506391f3b247ade1cb
Binary-Size: Needed to include language/region display names.
Reviewed-on:https://chromium-review.googlesource.com/c/chromium/src/+/3324373
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#951266}
[modify]https://crrev.com/0fd92171ebcc41f52e81d5105e3179510b085edd/DEPS
commit 0fd92171ebcc41f52e81d5105e3179510b085edd
Author: Frank Tang <ftang@chromium.org>
Date: Tue Dec 14 00:11:13 2021
[intl] Fix Android DisplayNames by including data
DisplayNames API in ECMA 402 [1] was not fully supported in v8 on Android
because language and region names were excluded in the ICU data
file for Android to save the download size.
Now that Android Chrome is not under the size pressure any more [2],
add back language and region names.
Size Impact: Android +715K
[1]
[2]
Bug: 1097432
Change-Id: Iadd0aaf1437911fb26fd67506391f3b247ade1cb
Binary-Size: Needed to include language/region display names.
Reviewed-on:
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#951266}
[modify]
ag...@google.com <ag...@google.com> #24
While we're not under a size crunch anymore, we still want to be conscientious about doing things in the most efficient way. #13 points out that there's a Java API that exposes the OS's icu data:
https://developer.android.com/reference/android/icu/text/LocaleDisplayNames#regionDisplayName(java.lang.String)
It's available for Android N+, which covers >95% of our devices. Could that be used instead?
It's available for Android N+, which covers >95% of our devices. Could that be used instead?
ag...@google.com <ag...@google.com> #25
[Empty comment from Monorail migration]
ag...@chromium.org <ag...@chromium.org> #26
Post-holiday ping.
ft...@chromium.org <ft...@chromium.org> #27
The data is needed inside ICU call inside v8. I have investigated methods to add Java dependency inside v8 for 1+ year ever since we stage display name in 2019 and conclude we cannot introduce Java dependency inside v8 code.
ag...@chromium.org <ag...@chromium.org> #28
Thanks, anything you can point to that explains why V8 on android can't have a java dependency? Note that you wouldn't need to compile any java files for this, just use the JNI api. Something like:
#if ENABLE_ANDROID_JAVA_ICU
... make JNI call to android.icu.text.LocaleDisplayNames via <jni.h>.
#else
... use C++ ICU
#endif
#if ENABLE_ANDROID_JAVA_ICU
... make JNI call to android.icu.text.LocaleDisplayNames via <jni.h>.
#else
... use C++ ICU
#endif
ft...@chromium.org <ft...@chromium.org> #29
syg- How likely do you think we could introduce/add JNI depending code inside v8?
js...@chromium.org <js...@chromium.org> #30
A limited set of ICU apis are available in C (not C++) on Android. If lang and region names are available that way, that may as well be considered (even simpler than JNI). See https://developer.android.com/guide/topics/resources/internationalization#icu4c
ag...@google.com <ag...@google.com> #31
The page says the NDK api is available starting in API level 31. Chrome currently supports Level 21+, so it'll likely be something we want to revisit in a few years time.
WIP doc to explore the JNI approach:https://docs.google.com/document/d/1AroPgQLeIsk5JXfkpA8mcAf7OBTkelqibuvYy8fJuQ4/edit
WIP doc to explore the JNI approach:
ft...@chromium.org <ft...@chromium.org> #32
gi...@appspot.gserviceaccount.com <gi...@appspot.gserviceaccount.com> #33
The following revision refers to this bug:
https://chromium.googlesource.com/chromium/src/+/a049b78ec1893fe1314c9fc449a3bd6052e27267
commit a049b78ec1893fe1314c9fc449a3bd6052e27267
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri Feb 11 16:00:48 2022
Android: Add unchecked_exceptions option to generate_jar_jni()
You could already do this for app methods via
@CalledByNativeUnchecked, but there was no way for SDK methods.
Feature request for wanting to call ICU methods from C++.
Bug: 1097432
Change-Id: I7185091cbee737b26861a0de77f7f75456f963bd
Reviewed-on:https://chromium-review.googlesource.com/c/chromium/src/+/3448915
Auto-Submit: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Sam Maier <smaier@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#969957}
[modify]https://crrev.com/a049b78ec1893fe1314c9fc449a3bd6052e27267/base/android/jni_generator/jni_generator.py
[modify]https://crrev.com/a049b78ec1893fe1314c9fc449a3bd6052e27267/build/config/android/rules.gni
[modify]https://crrev.com/a049b78ec1893fe1314c9fc449a3bd6052e27267/base/android/jni_generator/jni_generator_tests.py
commit a049b78ec1893fe1314c9fc449a3bd6052e27267
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri Feb 11 16:00:48 2022
Android: Add unchecked_exceptions option to generate_jar_jni()
You could already do this for app methods via
@CalledByNativeUnchecked, but there was no way for SDK methods.
Feature request for wanting to call ICU methods from C++.
Bug: 1097432
Change-Id: I7185091cbee737b26861a0de77f7f75456f963bd
Reviewed-on:
Auto-Submit: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Sam Maier <smaier@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#969957}
[modify]
[modify]
[modify]
ha...@google.com <ha...@google.com> #34
[Empty comment from Monorail migration]
is...@google.com <is...@google.com> #35
This issue was migrated from crbug.com/chromium/1097432?no_tracker_redirect=1
[Auto-CCs applied]
[Multiple monorail components: Blink>JavaScript>API, Blink>JavaScript>Internationalization]
[Monorail mergedwith:crbug.com/chromium/1175788 , crbug.com/chromium/1176979 ]
[Monorail components added to Component Tags custom field.]
[Auto-CCs applied]
[Multiple monorail components: Blink>JavaScript>API, Blink>JavaScript>Internationalization]
[Monorail mergedwith:
[Monorail components added to Component Tags custom field.]
Description
Chrome Version : 83.0.4103.101
Other browsers tested:
Chrome on MacOS (83.0.4103.106) works fine
What steps will reproduce the problem?
(1) const regionNames = new Intl.DisplayNames(['en'], {type: 'region'});
(2) regionNames.of('US'); // United States
(3) regionNames.of('BA'); // BA
What is the expected result?
(1) const regionNames = new Intl.DisplayNames(['en'], {type: 'region'});
(2) regionNames.of('US'); // United States
(3) regionNames.of('BA'); // Bosnia & Herzegovina
What happens instead?
(1) Intl.DisplayNames.supportedLocalesOf returns true for target language
(2) Only 'US' will return "United States" (English version regardless of other languages setting)
(3) All other regions return original region code, e.g. regionNames.of('CA') returns CA;
Tested on Three Android devices running latest Chrome, all receive same results.
MacOS seems return correctly.