gpt4 book ai didi

android - Phonegap 2.4 Android Proguard 配置

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:21:48 25 4
gpt4 key购买 nike

我已经将构建从 Phonegap (Cordova) 2.0 升级到 2.4,并且在开发中一切正常,直到我真正开始测试最终版本的 apk。在浪费了很多时间之后,我发现,出于某种原因,当我运行构建时,我的 proguard 配置以某种方式破坏了 phonegap 构建,这意味着当它运行时,永远不会调用 deviceready。构建时似乎没有错误,运行时也没有错误,据我所知什么也没有,但我猜 cordova js 中有什么东西悄悄地失败了,因为我没有在设备上得到编译/日志错误。

正如我所说,这仅适用于在构建过程中运行 Proguard obfs 的情况。如果我关闭 Proguard,一切正常。我将我所有的代码恢复到 2.0 以确保一切都很好,所以在这个过程中的某个地方出现了一个似乎没有记录的 stuble 更改/或者还没有人点击(2.4 几周前才发布 - 在写作时间 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 似乎没有任何意义 - 一目了然一切正常......

有人有什么想法吗???

最佳答案

尝试将 proguard-project.txt 中的 Cordova“保持”设置替换为以下行,它应该维护所有 Cordova 类、字段和方法,包括公共(public)和私有(private)(并因此重新启用设备就绪):

-保持类 org.apache.cordova.** { *;

然后你只需要包含你的类(大概是扩展 CordovaPlugin,而不仅仅是插件)例如

v3 之前的版本:

-keep public class * extends org.apache.cordova.api.CordovaPlugin

v3+:

-keep public class * extends org.apache.cordova.CordovaPlugin

关于android - Phonegap 2.4 Android Proguard 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15087491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com