问题标签 [dexguard]

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 投票
1 回答
919 浏览

android - Dexguard 在发布 apk 中跳过 jni 库

我正在我的项目中实现dexguard,但生成的应用程序崩溃并出现以下错误:

造成的:

java.lang.UnsatisfiedLinkError:未找到本机方法:com.gemalto.android.root.internal 的 com.gemalto.android.root.internal.MedlJni.goMedlJni:(Ljava/lang/String;Ljava/lang/String;)。 MedlJni.goMedlJni(本机方法)

我还解压缩了生成的 apk,发现其中缺少 libs 文件夹。应该对 dexguard 文件应用哪些规则以防止 dexguard 消除发布 apk 中的库?

请提出纠正错误的方法。

0 投票
1 回答
950 浏览

android - DexGuard 和矢量绘图

我正在使用 DexGuard 编译我的应用程序。我的应用程序使用矢量绘图。我的所有设置都是正确的,并且在调试版本和使用 Proguard 发布版本时都能正常工作。它只在使用 DexGuard 时在发布版本中崩溃。所以我知道这是一个 DexGuard 问题。我正在使用 DexGuard v7.0,由于许可证限制,我无法更新。我已经添加 -keepresourcefiles "res/drawable/**" -keep class android.support.v7.** { *; } 到我的 dexguard 文件中以用于测试目的和更清晰的堆栈跟踪,所以我们知道这不是问题。它与以下堆栈跟踪崩溃;

遵循代码后,我发现在使用 DexGuard 时,方法loadDrawableFromDelegates(从 调用getDrawableandroid.support.v7.widget.AppCompatDrawableManager返回 null。因此getDrawablecontinue 并调用ContextCompat.getDrawable,它在棒棒糖之前的设备中不支持向量,它返回 null 并带有invalid drawable tag vector日志,因此导致ResourcesNotFoundException.
使用调试版本时,loadDrawableFromDelegates确实返回一个 Drawable,因此ContextCompat.getDrawable不会被调用,并且一切正常。有谁知道如何避免这种情况。我用谷歌搜索过,还有其他人也有类似的问题,但主要是 appcompat 矢量设置问题,而不是 DexGuard。

0 投票
2 回答
515 浏览

android - DexGuard 7 和改造 2 错误

在我的应用程序中,我使用改造 2 进行网络通信。我有一个 serverAPI 接口,其中包含每个 api 请求,例如:

我使用 Dexguard 7.2.09 来混淆我的应用程序,并且每个网络通信都可以正常工作!

我真的不知道出了什么问题。

我在调试器中看到,当应用程序调用此请求时,代码会跳转到 onFailure() 方法,但应用程序不会将请求发送到服务器。

如果我不混淆应用程序,一切正常。

0 投票
1 回答
192 浏览

android - 零支持的安卓设备之谜

我已经尝试解决这个问题大约一个月了,但我找不到任何指向可能导致我的问题的信息。我已经检查过了,这似乎不是我所看到的“使用功能”问题之一。

我在开发者控制台上发布了一个与“支持的 Android 设备”详细信息相关的先前问题,这似乎与我相矛盾。0 支持的设备与否?

下面是 aapt 的输出。任何人都可以看到任何会导致零支持的android设备的东西吗?感谢所有帮助。我已经删除了输出的“标签”行。

0 投票
1 回答
927 浏览

firebase - Dexguard 导致 Firebase 崩溃

知道为什么会发生这种崩溃吗?调试构建工作,但 Dexguard 版本在尝试登录用户时崩溃(使用登录signInWithCustomToken

更新:以下 proguard 设置修复了该问题

-keep class com.google.android.gms.internal.** { *; }

Firebase 版本:9.4.0

Proguard 配置:

0 投票
2 回答
541 浏览

android - Flexjson 和 Dexguard/Proguard

当涉及到 flexjson 库时,我在使用 dexguard 时遇到问题。尝试使用 JSONDeserializer 反序列化时,我不断收到以下错误。

有没有人有适当的规则让 flexjson 在 android 发布 apk 中混淆后正常工作?

类似于 gson lib 的东西。

0 投票
1 回答
2426 浏览

android-gradle-plugin - Android gradle 插件(升级到 2.2.0 后)在 dexguard 任务错误“No signature of method: ....getAllLibraries()”时失败

我在“dexguard”任务期间得到了这个堆栈跟踪(所有行都以时间戳和开头[ERROR] [org.gradle.BuildExceptionReporter]):

我在 Windows 7 64b 上使用 DexGuard v7.1.23、Android Studio 2.2、默认 gradle 2.14.1。

更改后发生错误(在所有相关build.gradle脚本中):

使用 gradle 插件 2.1.3 构建工作。

我尝试通过远程连接到 gradle 在 Android Studio 中对其进行调试,但是虽然调试器中的“暂停”按钮看起来像是暂停了进程,并且我可以恢复执行,但它不会显示任何代码(可能需要 gradle 的来源以及所有涉及的插件?)。

我认为错误最有可能出现在 dexguard gradle 插件代码中,它访问了 android gradle plugin 2.2.0 中不再可用的东西。


提问时间:

如何甚至调试/修复这样的东西?我已经习惯了来自大型 C++ 项目的一些重要的构建方案,这些项目涉及 make 文件和执行外部工具的各种脚本(我可以轻松地在源代码级别检查每个构建错误,并准确了解使用什么参数调用二进制文件以及为什么) ,但是这个 gradle 生态系统有这么多从一些网络存储库下载的动态部分和极慢的 Groovy 执行控制,对我来说有点太复杂了,超出了我的想象。

是否有(不是很困难)调试构建过程的方法(我不是在谈论本机调试器和调试 VM 本身,虽然可能,但结果听起来毫无用处)?也许一些简单的方法也可以从存储库中获取源包,类似于 linux 的 -src.pkg,只需添加依赖项?

或者我可以在某处找到缓存的 dexGuard gradle 插件二进制文件,将其反汇编,检查它调用的内容,然后在我自己的脚本中手动重写它?

任何有关如何获取有关该 gradle blackbox 的更多信息的建议都值得赞赏,即。它是如何工作的,为什么失败等等......(虽然我不考虑正确学习整个 Groovy,特别是因为即使对于核心语言我也没有那种心态(我是一个简单的人,在 ASM 中思考和 C++),如果我理解得很好,gradle 会以特定领域的方式扩展它,所以纯 Groovy 甚至不足以流利地理解这些脚本?)。

0 投票
1 回答
1564 浏览

android - 图书馆项目中的 Dexguard

我正在从 Dexguard 6 升级到 7,并且有一个关于库混淆的问题。使用 Dexguard 6,我可以混淆我的库,它是 Android Studio 中的一个模块,然后在我的应用程序中使用这个模块,并将其作为本地依赖项:

但是,当我尝试使用 Dexguard 7.0.31 执行此操作时,出现异常:

任务 ':sdk:transformClassesAndResourcesWithProguardForRelease' 执行失败。> java.io.FileNotFoundException: /lib/dexguard-library-release.pro (没有这样的文件或目录)

0 投票
2 回答
2232 浏览

android-proguard - proguard.ParseException:proguard.cfg 中的未知选项“-encryptstrings”

当我使用 progurad 选项运行 mvn install 目标时,出现以下错误。以前,我没有这个错误。我找不到导致以下错误的原因:

我正在为我的项目使用 dexguard。这个错误是因为 maven 无法识别 dexguard 文件夹位置吗?

proguard.cfg 内容:

以下工作没有问题:
0 投票
1 回答
40 浏览

android - Proguard 应用程序执行错误

当我不使用 proguard 时,它工作得非常好。但是,当我尝试使用 dexguard 或 proguard 时,它不起作用。但我可以制作apk文件。

令人惊讶的是我尝试了选项,但它没有优化我的文件,同样的错误发生了。

错误是:

所以我尝试调试,我发现该应用程序停在下面的代码段。

有人可以帮我弄这个吗?