0

一个邮件程序的新版本无法在我的 Android 手机上运行。程序作者忽略了半年的错误报告,然后像无效一样关闭它,因为“可能(原文如此!)您手机上的 Charset 类中缺少某些(原文如此!)方法,请您的供应商修复它。” 在不同的不相关设备上,是的......

方法呢,据我所知,如果应用程序需要缺少的类/方法,那么 Java(甚至是 Dalvik?)将不允许该应用程序启动(除非使用了被黑的 ClassLoader)。所以问题是要找到一些程序来枚举存在哪些方法,存在哪些语言环境等等。而且,有可能所有方法都在原地,但并非所有参数(如字符集)都被识别。

探索我能在这里做什么我设法找到 /system/usr/icu/icudt48l.dat 大小 7.8 MB

我如何检查是否

  1. 这个文件是 ICU4j 还是 ICU4c 格式?
  2. 它包含哪些表?
  3. 它是否与安装的 ICU 版本或 ICU 二进制文件版本匹配?
  4. Android 添加 cp866 字符集来看- Android 只能有一些字符集表。哪些字符集是强制性的,哪些是 Android 4 规范的可选字符集?

我有 Android 4.1 手机,我可以将文件复制到 Windows 框进行检查。

PS。也许有人知道是否有一些相对轻量级的工具来检查 CharSet 方法的存在和合规性。我不能在这里使用 Android CDT,因为它的体积很大并且需要在 Linux 上运行,诺丽确信 CDT 已经测试了所有世界语言

聚苯乙烯。尽管解析二进制文件,这可能是用户的问题而不是程序员的问题。我查看了https://superuser.com/questions/tagged/android但是.. 似乎那里的 Android 高级用户社区几乎不存在。

4

1 回答 1

1

ICU 带有一个名为icupkg的工具,可让您提取/列出/等。.dat 的内容

于 2013-07-03T17:38:52.197 回答