【问题标题】:Implementation of dexguarddexguard 的实现
【发布时间】:2013-12-24 06:01:54
【问题描述】:

我已将 com.saikoa.dexguard.eclipse.adt_*.jar 文件放在 eclipse 的 dropin 文件夹中。并修改了 android Project 中的 Proguard-Project 和 Project-Properties 文件。我构建了 .apk 的发布版本。我的 apk 被混淆了,缩小了。但我也希望我的资产被混淆。这不会发生。那么,如何在 dexguard 的帮助下混淆你的 android 项目的资产。

【问题讨论】:

    标签: android dexguard


    【解决方案1】:

    DexGuard 提供选项-encryptassetfiles 来加密资产。它记录在 DexGuard 手册 > 设置 > -encryptassetfiles 中。示例目录还包含一个示例项目,用于说明该功能。

    【讨论】:

    • 嗨@eric,我已经按照 dexguard ->manual_>settings>encryptassetfiles 中编写的每个步骤进行操作。我也在发布模式下运行了示例目录,但资产文件夹中的资产文件仍然没有加密。我不知道为什么会这样,你能告诉我我做错了什么吗?
    • 在我的资产文件夹中,我只有一个包含单个文本的 .txt 文件
    • 我可以使用apk工具轻松获取资产内容
    • @abh22ishek 如果您联系支持人员,我们会解决的。
    【解决方案2】:

    我遇到了同样的问题,并在文档中找到了解决方案。

    这意味着您的代码必须调用 AsssetManager,如下所示: 打开(“我的资产文件”)。

    如果您没有以这种方式加载资产,则 Dexguard 不会加密资产。

    例如,您必须像这样打开您的资产:

    InputStream stream = context.getAssets().open("myAssetFile.html");
    

    而不是

    mWebView.loadUrl("file:///android_asset/myAssetFile.html");
    

    您还需要确保您已设置 dexguard 配置来加密您的资产:

    -encryptassetfiles assets/myAssetFile.html,assets/myOtherAssetFile.txt
    

    【讨论】:

    • 你能详细说明一下用法吗?举个例子吧。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-24
    • 2019-06-29
    • 1970-01-01
    相关资源
    最近更新 更多