Discussion:
[android-porting] Rebuilding's ICU's .dat file
Jeffrey Blattman
2018-09-27 19:17:07 UTC
Permalink
Android 8.1.

I need to re-build ICU's icudt58l.dat file because someone decided that
Canada should really have a 24 hour clock. I did this on an Android 5.1
source tree by making changes to the locales/... file I needed, then doing
a "make" in icu4c/source/data. When I do this on our Android 8.1 tree, the
build go fine, but when I plop the .dat file on the device it won't boot
and gets this,

09-27 15:12:14.667 E/Zygote ( 8313): System zygote died with exception
09-27 15:12:14.667 E/Zygote ( 8313):
java.lang.ExceptionInInitializerError
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.lang.UCharacter.getUnicodeVersion(UCharacter.java:3877)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.text.StringPrep.<init>(StringPrep.java:277)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.text.StringPrep.getInstance(StringPrep.java:314)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.IDNA2003.<clinit>(IDNA2003.java:37)
09-27 15:12:14.667 E/Zygote ( 8313): at
java.lang.Class.classForName(Native Method)
09-27 15:12:14.667 E/Zygote ( 8313): at
java.lang.Class.forName(Class.java:453)
09-27 15:12:14.667 E/Zygote ( 8313): at
com.android.internal.os.ZygoteInit.preloadClasses(ZygoteInit.java:300)
09-27 15:12:14.667 E/Zygote ( 8313): at
com.android.internal.os.ZygoteInit.preload(ZygoteInit.java:128)
09-27 15:12:14.667 E/Zygote ( 8313): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
09-27 15:12:14.667 E/Zygote ( 8313): Caused by:
java.util.MissingResourceException: could not locate data
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.ICUData.getStream(ICUData.java:145)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.ICUBinary.getData(ICUBinary.java:499)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.ICUBinary.getRequiredData(ICUBinary.java:453)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.UCharacterProperty.<init>(UCharacterProperty.java:1221)
09-27 15:12:14.667 E/Zygote ( 8313): at
android.icu.impl.UCharacterProperty.<clinit>(UCharacterProperty.java:1437)
09-27 15:12:14.667 E/Zygote ( 8313): ... 9 more

I also tried re-building with zero changes to any source files and had the
same problem. The resulting .dat file is ~3k smaller that the one in
stubdata.

Any ideas?
--
--
unsubscribe: android-porting+***@googlegroups.com
website: http://groups.google.com/group/android-porting

---
You received this message because you are subscribed to the Google Groups "android-porting" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-porting+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...