在编译时从Android Dex文件中剥离AWT引用
我在我的在编译时从Android Dex文件中剥离AWT引用,android,jvm,dalvik,dex,dx,Android,Jvm,Dalvik,Dex,Dx,我在我的Android应用程序中收到警告,说我的字节码非法引用java.awt,在某些情况下,运行时似乎会替换无效的操作码 09-22 19:36:41.688: W/dalvikvm(831): VFY: unable to find class referenced in signature (Ljava/awt/Component;) 09-22 19:36:41.688: W/dalvikvm(831): VFY: unable to resolve virtual method 523
Android
应用程序中收到警告,说我的字节码非法引用java.awt
,在某些情况下,运行时似乎会替换无效的操作码
09-22 19:36:41.688: W/dalvikvm(831): VFY: unable to find class referenced in signature (Ljava/awt/Component;)
09-22 19:36:41.688: W/dalvikvm(831): VFY: unable to resolve virtual method 523: Ljava/awt/Component;.isLightweight ()Z
09-22 19:36:41.688: D/dalvikvm(831): VFY: replacing opcode 0x6e at 0x0000
我是否可以告诉DX
工具更早地清除或替换这些引用(如在编译时),以便生成的dex文件不再具有这些引用?您可以尝试proguard。我不知道它是可以去掉类中未使用的方法,还是只去掉整个类。如果是前者,它很可能会删除冒犯性的引用。如果是后者,可能不是
但无论如何,这些只是警告,而且大多是无害的。唯一的“危害”是它给dex文件增加了一点膨胀,这需要一点额外的内存/磁盘空间