【问题标题】:Phonegap functionality not working after eclipse apk export - proguard issue?eclipse apk导出后Phonegap功能不起作用-proguard问题?
【发布时间】:2020-11-23 02:43:56
【问题描述】:

当我在设备上使用 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.*

【问题讨论】:

    标签: android cordova proguard cordova-plugin-proguard


    【解决方案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)

    【讨论】:

      【解决方案2】:

      我用过: -keep class org.apache.cordova.** { *; } 在保护我的科尔多瓦应用程序时,它没有用。但是当我在所有java文件的'-keep'语句之后编写相同的语句时,它工作得非常好。(可能是因为在保留所有cordova函数之后,保持java函数覆盖并再次排除cordova函数)。 但是我的一个项目更改顺序并不重要,而其中一个仅在更改顺序后才起作用,即通过编写 -keep class org.apache.cordova.** { *; } 声明在 proguard 配置文件的末尾。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-20
        • 1970-01-01
        • 1970-01-01
        • 2012-06-13
        • 1970-01-01
        • 2015-11-16
        相关资源
        最近更新 更多