问题标签 [android-proguard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
526 浏览

jar - proguard - 欺骗 zip 条目(将 facebook 解析 UI 库升级到 v4 后)

---已解决:从 :app:build.gradle 中删除了 2 行---

此处的 lib注释可以解释为“您需要在 proj.root.build.gradle 中使用这 2 条语句。这不是真的。我不得不删除这些语句,以免从 proguard 收到 'dupe zip' 错误。

- 解决了 -

将parseUI 库从 v3升级到 v4 进行得很顺利,直到我尝试在 gradle“assembleRelease”任务中运行 proguard。

错误:

:proguardRelease 失败

FAILURE:构建失败并出现异常。

我检查了 proguard 常见问题解答中的“dupe zip”......我试图弄清楚依赖关系树如何处理该库中的./libs/Parse-1.9.1.jar的重复。

即时消息卡住

构建.gradle...

“发布”的依赖关系图...

在 project.root 下,唯一的 jar 文件是:

前卫配置...

0 投票
0 回答
631 浏览

java - Proguard 保留类和包的名称,但混淆字段和方法

Proguard 保留类和包的名称,但混淆字段和方法。在我的映射文件中,我看到所有包和文件名都保持不变,但我们不需要它。我的 Proguard 的文件:

与此同时,我们具有相同配置的另一个项目工作正常。重命名包和类的所有名称。欢迎任何建议。

0 投票
0 回答
227 浏览

android - 保留 android 库的类时 Proguard 出现问题

我想使用 Proguard 进行应用。我正在com.melnykov.fab.FloatingActionButton用作库,所以我想排除它。

我在我的build.gradle

proguard-rules.pro文件中,我添加了以下行:

但是这个库被混淆了,在我的应用程序的 apk 中,实际代码和混淆代码都存在。

有人可以告诉我我是否遗漏了什么proguard-rules.pro吗?

0 投票
1 回答
1200 浏览

java - ProGuard 包名称缩短

我正在开发一个 Android 项目,当我打包它以进行分发时,它会自动通过 ProGuard 运行。

使用 Android 默认设置,ProGuard 将类和包名称混淆为大多数单个字母,但保留包层次结构。所以,例如,如果我有一个像

com.example.foo.bar.something.else.my.class.net

包含来类Blah,ProGuard 会将其变成类似

a.b.b.c.a.c.a.a.b.a

其中最后一个a代表类名Blah

是否有一些开关告诉 ProGuard 将整个包层次结构折叠成一个标识符,即将上面的例子变成类似dw.awheredw代表的东西a.b.b.c.a.c.a.a.b

0 投票
1 回答
376 浏览

android - 从 Google Play 商店下载签名的 APK 崩溃

我在我的应用程序中使用Facebook SDKfor ,当我在我的真实设备中使用或安装Login with Facebook时,应用程序可以完美运行。但是,当我在 Play Store 上上传相同的签名 APK 并下载并运行它时,它会崩溃并显示以下错误日志。unsigned APKsigned APK

我已经尝试在我的progaurd-project.txt文件中添加以下代码。

我的project.property文件是:

我的proguard-project.txt是:

错误日志是:

我已经检查了我的发布Keyhash并在 Facebook 上添加了它。

已经尝试过的解决方案:

  1. 登录 facebook 时签名的 apk 崩溃

  2. Android Facebook 与 proguard 的集成

  3. Facebook 和 proguard

  4. Facebook 的 Android ProGuard 设置

  5. 导出的 apk 出错 - FacebookSDK

  6. 首次尝试登录 facebook 时出现此错误。如何解决此问题?

0 投票
1 回答
4125 浏览

java - 使用 ProGuard 混淆私有字段

我在带有 Gradle 1.2.3 的 AndroidStudio 1.2.1.1 中使用 ProGuard。

我的 Gradle 的发布版本配置如下:

我希望混淆类的私有字段。

到目前为止,这是我的 proguard 配置文件(经过多次尝试):

androdd但在从 AndroidGuard反编译后,我最终得到:

我知道这种混淆的使用是有限的,但我想googleApiClient被 ProGuard 重命名。怎么做?

这是refcard

有没有办法做相反的事情-keepclassmembernames

0 投票
1 回答
1243 浏览

android - Proguard、HttpClient 和 SSLPeerUnverifiedException

我想在我的应用程序中使用 ProGuard。我使用 org.apache.http.impl.client.DefaultHttpClient 向服务器发送请求。没有 Proguard 它工作得很好,但是当我打开 ProGuard 时,我可以构建应用程序,但是在运行时当我运行应用程序时,我收到以下异常:

我不明白问题出在哪里。我禁用了收缩和优化,但没有帮助。此外,我尝试仅启用收缩选项,即禁用了混淆和优化,但它也没有帮助。

为了构建我的应用程序,我使用 maven。我的 pom 文件的一部分:

proguard-android.txt 是 SDK 文件夹中的标准文件

我的 proguard.cfg 文件:

0 投票
1 回答
850 浏览

android - Android Studio 更新后 ProGuard 无法正常工作

由于我将 Android Studio 更新到版本1.2.1.1,我遇到了以下问题:

每当我构建应用程序的发布版本/构建变体时,我都会在我作为库模块包含在项目中NoClassDefFoundErrorAdjust 库中获得一个。

轨迹:

我的代码的相应部分:

minifyEnabled false;当我在我的 中关闭 Proguard 时 build.gradle,错误消失了。

我的 proguard-rules.pro 看起来像这样:

这些 Proguard 规则可能看起来有点奇怪,因为它们只做一件事:混淆android.support.v7.internal.view.menu包中的类。此过程是针对三星设备上已知的 Android 支持库问题的解决方法。

更令人困惑的是,NoClassDefFoundError只有运行 Android < 的设备才会出现5.0

关于可能是什么原因或如何解决这个问题的任何想法?

0 投票
0 回答
336 浏览

android - 使用 Proguard 时 getDeclaredAnnotation 崩溃

我有一个带有 10 个库项目和一个应用程序项目的 android 应用程序。2 个库项目使用 jackson 库作为依赖项。这是他们两个的 build.gradle 的片段

现在我的应用程序崩溃,出现以下异常

在崩溃之前,我可以在日志中看到以下几行

我尝试在没有使用 proguard 的情况下构建应用程序

然后它工作正常。但这不是一个选择,因为我需要对我的应用程序进行混淆。我在我的 proguard 文件中尝试了以下内容。

但它仍然会崩溃。你能告诉我如何避免这种崩溃吗?

0 投票
3 回答
9861 浏览

android - Android Proguard 警告:无法写入资源(重复的 zip 条目)

我启用了 proguard 并得到:

这是什么意思?我应该排除类似这里的东西吗?