我在安卓产品设备上运行CTS(基础代码为android 2.3),但以下案例失败:
java.io.UnsupportedEncodingException: GB18030 at java.nio.charset.Charset.forNameUEE(Charset.java:317)
at java.nio.charset.Charset.forNameUEE(Charset.java:317)
at java.lang.String.getBytes(String.java:973)
at org.apache.harmony.luni.tests.java.lang.StringBufferTest.test_toString(StringBufferTest.java:101)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1447)
at java.nio.charset.Charset.forName(Charset.java:304)
at java.nio.charset.Charset.forNameUEE(Charset.java:315)
at java.nio.charset.Charset.forNameUEE(Charset.java:317)
at java.lang.String.getBytes(String.java:973)
at org.apache.harmony.luni.tests.java.lang.StringBufferTest.test_toString(StringBufferTest.java:101)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1447)
at java.nio.charset.Charset.forName(Charset.java:304)
at java.nio.charset.Charset.forNameUEE(Charset.java:315)
当我在 Android SDK 2.3.3 模拟器上运行相同的测试时,它通过了。
然后我对比了android 2.3.3和我的代码的源代码,没有什么不同。但我认为一定有一些我没有注意到的不同之处。然后我发现这个问题与 ICU4C 有关,但 ICU4C 非常复杂,谁能告诉我任何线索来跟踪这个问题?或者我应该如何继续跟踪问题?
非常感谢。