我在我的android代码中使用icu4j。 jar约为10MB,这使我的整个应用程序注册了15MB的apk。当然15MB可能是由于Proguard帮助缩小尺寸。无论如何,有没有人知道icu4j的一个较小的替代品?我将icu4j与libphonenumber
结合使用仅用于一个目的,详细here,我将在下面重现:
你需要:
getSupportedRegions()获取区域代码列表
getCountryCodeForRegion(regionCode)获取每个国家的国家/地区呼叫代码(1,44等)
然后要获得实际名称,你应该使用ICU4J - > http://icu-project.org/apiref/icu4j/ - >它会得到你的国名 来自这些区域代码的用户所说的任何语言。 (getDisplayCountry())
答案 0 :(得分:3)
从Android 7.0(API 24)开始,ICU框架已公开,因此您无需在应用中单独包含该库。 documentation建议您创建APK的多个版本,如果您需要将其包含在早期的Android版本中。
当然,如果您只需要一件小事,那么最好找一个可以完成工作的原生Android或Java API,或者一些较小的第三方库。
注意强>
答案 1 :(得分:0)
您可以使用出色的 Eclipse 删除未使用的源。
就我而言,我只需要icu4j即可检测文本文件的字符集,因此我编写了一个代码片段来检测数十个文件,并且在运行该代码片段时,我手动删除了不相关的源代码。经过服务器尝试后,我只得到了2个软件包,即22 + 27个来源。