eclipse apk导出后,phonegap功能无法正常工作 - proguard问题?

时间:2013-05-10 17:43:59

标签: android cordova proguard

当我使用Run as - >在设备上测试我的应用时Android应用程序,Phonegap功能正常。

当我使用Eclipse导出.apk文件并在设备上运行时,Phonegap功能无效。我认为这可能是一个Proguard问题。我该如何解决这个问题?

proguard的-的properties.txt

-keep public class * extends com.phonegap.api.Plugin
-keep public class * extends org.apache.cordova.api.Plugin
-keep public class org.apache.cordova.DroidGap
-keep public class org.apache.cordova.**
-libraryjars /path/to/adt-bundle-mac/sdk/tools/lib/commons-codec-1.4.jar
-dontwarn android.webkit.*

2 个答案:

答案 0 :(得分:1)

这有效:

-keep public class * extends com.phonegap.api.Plugin
-keep public class * extends org.apache.cordova.api.Plugin
-keep public class org.apache.cordova.DroidGap
-keep public class org.apache.cordova.**
-keep public class org.apache.**
-dontwarn android.webkit.*
-dontwarn org.apache.**
-keep public class * extends org.apache.cordova.api.CordovaPlugin
-keep class org.apache.cordova.** { *; }

Phonegap 2.4 Android Proguard config

答案 1 :(得分:-1)

我用过: -keep class org.apache.cordova。** {*; } 虽然我的cordova应用程序正在进行,但它没有用。但是当我在所有java文件的'-keep'语句之后写了相同的语句然后它工作得很好。(这可能是因为在保留所有cordova函数之后,保持java函数覆盖并再次排除cordova函数)。 但是我的一个项目改变顺序并不重要,而在一个项目中它只在订单改变之后工作,即通过编写-keep class org.apache.cordova。** {*;最后在proguard配置文件中的语句。