问题标签 [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 投票
3 回答
9404 浏览

android - 在 android studio 中设置 dexguard 许可证文件

我没有在 dexguard 中找到 dexguard-license.txt 文件。请帮助我在 android studio 中设置 gradle 这是我的 gradle 控制台输出

0 投票
1 回答
1477 浏览

android - Dexguard:在没有 Android 应用程序的情况下加密 .so 文件

目前我有一个简单的android库。我可以使用 DexGuard 进行混淆处理。但现在我想使用 DexGuard 的本机库加密功能,而无需实际拥有 Android 应用程序。是否有可能做到这一点?

0 投票
1 回答
1665 浏览

java - 使 Dexguard 不删除未使用的资源

我很难使用 dexguard 使其不删除我以这种方式访问​​的资源:

int resourceId=getResources().getIdentifier("图片", "array", getActivity().getPackageName());

当我执行应用程序时,出现以下异常:

java.lang.RuntimeException:无法启动活动 android.content.res.Resources$NotFoundException:数组资源 ID #0x0 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread .java:2387) 在 android.app.ActivityThread.access$800(ActivityThread.java:151) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 在 android.os.Handler.dispatchMessage(Handler.java :102) 在 android.os.Looper.loop(Looper.java:135) 在 android.app.ActivityThread.main(ActivityThread.java:5254) 在 java.lang.reflect.Method.invoke(Native Method) 在 java。 lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os。ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 原因:android.content.res.Resources$NotFoundException:数组资源 ID #0x0

我在 proguard-project.txt 中使用了这个指令,这些指令是从堆栈溢出的一些相关问题中提取的,但什么也没解决:

我怎样才能告诉 dexguard 不要剥离这个资源?

提前致谢。

0 投票
1 回答
880 浏览

android - 如果应用 dexguard,android studio getResources().getIdentifier 返回 0

我在应用程序中使用了 dexguard。我正在动态加载图像并在它的图像视图中显示。但图像视图显示空白。我正在使用下面的代码。

当我为我的项目使用 dexguard 1.7.0.02 时,它返回 0(启用缩小并禁用混淆并优化调试构建)。如果我删除 dexguard 并运行项目,它工作正常并显示正确的图像。

注意:在 Eclipse 中与 dexguard 相同的项目,对上述代码工作正常。我只在 Android Studio 中遇到过这个问题。

0 投票
1 回答
662 浏览

android - 带有 Maven 和 Android Studio 的 Dexguard 不起作用

我正在接管一个项目,一个 Android 应用程序,它是在 Eclipse 上使用 ADT 插件开发的。它还使用 maven3 和 dexguard 来混淆代码。

因为我通常使用 Android Studio (AS),所以我在 AS 中导入了旧项目。除 Dexguard 外,一切正常。

每当我想运行该项目时,我都会收到一条错误消息:No implementation for org.eclipse.aether.impl.VersionResolver was bound.

这是完整的错误消息:

和 pom.xml 文件:

告诉我你是否还需要什么。

谢谢你的帮助。

0 投票
1 回答
3461 浏览

android - 无法应用插件:build.gradle 文件中的“dexguard”

当我添加apply plugin: 'dexguard'到我的主模块的build.gradle文件中时,我遇到了以下错误。

错误:无法加载类“com.android.build.gradle.BasePlugin$PostCompilationData”。此意外错误的可能原因包括:

  • 您正在使用 JDK 版本'java 版本“1.7.0_67”'。JDK 1.7 的某些版本(例如 1.7.0_10)可能会导致 Gradle 中的类加载错误。请更新到较新的版本(例如 1.7.0_67)。打开 JDK 设置
  • Gradle 的依赖缓存可能已损坏(有时会在网络连接超时后发生。)重新下载依赖并同步项目(需要网络)
  • Gradle 构建过程(守护进程)的状态可能已损坏。停止所有 Gradle 守护程序可能会解决此问题。停止 Gradle 构建过程(需要重新启动)
  • 您的项目可能正在使用与项目中的其他插件或项目请求的 Gradle 版本不兼容的第三方插件。
在 Gradle 进程损坏的情况下,您还可以尝试关闭 IDE,然后杀死所有 Java 进程。

我项目的build.gradle文件:

我的主模块的build.gradle文件:

注意:如果我删除apply plugin: 'dexguard'行,错误变为:

错误:(29, 0) 找不到 Gradle DSL 方法:'getDefaultDexGuardFile()' 可能的原因:

  • 项目“AndroidWorkSpace”可能正在使用不包含该方法的 Gradle 版本。摇篮设置
  • 构建文件可能缺少 Gradle 插件。应用 Gradle 插件

附加功能:

  • 我有DexGuard v6.1flatDir dirsatbuild.gradle文件是正确的位置。
  • 安卓工作室v 1.3.0 (build 141.2117773)
  • Android Studio 安装目录下的 Gradlegradle-2.4
  • 0 投票
    1 回答
    5017 浏览

    android - 运行签名的 apk 时出现 Dexguard 错误

    我正在使用 Android Studio,我的项目有 5 个模块。

    运行签名的混淆 apk 时出现以下错误无法实例化应用程序 com.....FTApplication:java.lang.ClassNotFoundException:在路径上找不到类“com....FTApplication”:DexPathList [[zip 文件“/data/app/app.apk”]。

    这是我的配置

    DexGuard6.1.03 com.android.tools.build:gradle:1.0.0 - 依赖应用程序扩展自 MultiDexApplication。

    清单.xml

    顶级 build.gradle

    模块 build.grade

    0 投票
    1 回答
    259 浏览

    java - DexGuard - 使用 Robolectric 加密类 NullPointerException

    对于某些类,我在使用 -encryptclasses 运行 DexGuard 时遇到问题。该问题仅在运行 Robolectric 单元测试时发生。我从任何被 DexGuard 混淆和加密的类中得到一个 NullPointerException。如果我关闭 encryptclasses 标志,它可以在 Robolectric 中使用。

    该配置也适用于设备和模拟器:在 Android 环境中运行应用程序(在 Dalvik 和 ART 设备和模拟器中测试)运行良好。Android Instrumentation 测试也有效。只有在通过 Robolectric 运行时,我才会收到 NullPointerException。如果我禁用 DexGuard encryptclasses,一切都可以在 Robolectric 中使用。

    DexGuard 正在我所依赖的库中使用。这个库被添加到我的 gradle 模块的 libs 文件夹中。

    我会将其发布为 Robolectric 问题,但如果没有 DexGuard 工具的许可,它们可能无法复制。

    设置是:

    • 安卓工作室 1.3.2
    • 安卓 Gradle 插件 1.3.1
    • Android 构建工具版本 23.0.0
    • Android compileSdkVersion 22
    • 甲骨文 JDK 8
    • Ubuntu 15.04 64 位
    • DexGuard 版本:5.5.00
    0 投票
    1 回答
    1310 浏览

    android - Android DexGuard:从混淆中排除 Crashlytics

    当我关闭 DexGuard 时,我的应用程序可以与 Crashlytics 完美运行。但是,当我添加以下配置来混淆我的代码时,应用程序在启动时卡住并出现黑屏。

    这是build.gradle的相关部分

    基础build.gradle文件:

    dexguard-project.txt文件的相关部分:

    Logcat 控制台输出:

    我实际上在用 Crashlytics.getInstance 做什么:

    我在构建日志中没有看到任何警告或错误。任何人都知道是什么导致了这个问题?

    提前致谢!

    0 投票
    1 回答
    1471 浏览

    android - 如何在 Android Studio 中将 DexGuard 集成到我的项目中

    我一直在寻找将 DexGuard 集成到我的项目中的资源/文档。我正在使用安卓工作室。

    我从 DexGuard 下载了库和示例项目,但没有提供关于如何将它与我的项目集成的适当文档。

    跟随给定的项目是如此令人困惑,因为我对此很陌生,而且我不明白要复制和修改哪些文件我的 Build.gradle。任何有使用 DexGuard for Android Studio 经验的人请帮助我。

    提前致谢。