我已经从Phonegap(科尔多瓦)2.0版本升级到2.4,并且一切工作都很好,直到我真正来测试最终版本的apk。我发现,在浪费了很多时间之后,出于某种原因,现在当我运行构建时,我的proguard配置以某种方式打破了phonegap构建,这意味着它在运行时不会调用deviceready。似乎没有错误时,建设,也没有运行,没有什么,只要我能看到,但我猜一些默默无闻的cordova js失败,因为我没有得到设备上的编译/日志错误。Phonegap 2.4 Android Proguard配置
正如我所说,这是只有在编译过程中运行Proguard obfs。如果我关闭Proguard它一切正常。我将所有的代码恢复到了2.0,这一切都很好,所以在这个过程中一直存在着一个看起来没有记录的或者没有人打过的stuble变化(2.4几个星期前才发布 - at写作时间2013年2月26日)。
我ProGuard配置文件中包含了PhoneGap的以下(以及一些其他的标准配置)
-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.**
和反编译的DEX似乎并没有抛出任何光线 - 一切看起来不错一目了然......
任何人有任何想法?
随机不相关的问题:你为什么要使用DroidGap而不是CordovaWebView? – 2013-02-26 11:22:19
这可能是调查@ Edward的一个途径...我的应用程序正在扩展DriodGap - 因为它早在2.0之前就已经存在了(我认为)。 proguard配置-keep public org.apache.cordova我已经从其他文章中排除了有关proguard和phonegap的问题。该应用程序启动罚款和加载正确的网址,但似乎只有加载js时有问题。 – 2013-02-26 11:51:55