注意:android.support.v4.text.icu比较:can';找不到动态引用的类libcore.icu.icu

注意:android.support.v4.text.icu比较:can';找不到动态引用的类libcore.icu.icu,android,proguard,Android,Proguard,今天,我开始使用最新的Android构建工具(ABT)v19.0.3来获取信息。乍一看,我认为这可能是ABT的一个问题。然而,更仔细的调查显示,这条信息: android.support.v4.text.ICUCompatIcs: can't find dynamically referenced class libcore.icu.ICU 仅在使用Proguard时显示。网上的答案对我来说没有解决办法。也许,这只是Proguard的一个问题(我使用的版本与Android SDK v22.3捆

今天,我开始使用最新的Android构建工具(ABT)v19.0.3来获取信息。乍一看,我认为这可能是ABT的一个问题。然而,更仔细的调查显示,这条信息:

android.support.v4.text.ICUCompatIcs: can't find dynamically referenced class libcore.icu.ICU
仅在使用Proguard时显示。网上的答案对我来说没有解决办法。也许,这只是Proguard的一个问题(我使用的版本与Android SDK v22.3捆绑在一起)

我已将以下指令添加到
proguard project.txt
文件中,但没有区别:

-keep interface android.support.v4.** { *; }
-keep class android.support.v4.** { *; }

是否有其他人看到此消息并有可能的解决方案?也许Proguard的Eric可以为这个问题提供一些线索。Proguard可能需要进行代码清理?我很想知道解决方案。

注意到支持类正在使用反射来访问目标运行时中不存在的运行时类。一般来说,这可能是兼容性问题的迹象。在这种情况下,它是无害的;支持库的开发人员正是使用反射来避免与不同运行时环境的任何链接问题。可以使用以下命令抑制注释:

-dontnote android.support.**

我今天在为我的项目设置proguard时遇到了同样的问题。因为这只是一个注释,我忽略了它,我的预编代码运行良好。您是否尝试过使用类似
-libraryjars$ANDROID\u HOME/extras/ANDROID/support/v7/appcompat/libs/ANDROID-support-v4.jar的命令来忽略注释。然而,Proguard是否应该显示此注释@Shonzilla:添加
keep class android.support.v7.appcompat**{*}
或按照上面的建议操作也不会删除注释。这就是我被难倒的原因。谢谢你,埃里克。我会把你的建议添加到我的项目中。