【发布时间】:2017-09-25 06:51:39
【问题描述】:
我正在使用 DexGuard v7.3.18,我想加密存储在 assets/json 中的 JSON 文件,我可以在我的类中访问这些文件,如下所示:
inputstream = context.getAssets().open("json/" + jsonFileName)
我为dexguard-project.pro 配置了各种选项,例如:
-encryptassetfiles assets/json/**.json-encryptassetfiles assets/json/**
但两者都没有帮助加密 JSON 文件。根据 DexGuard 文档:
-encryptassetfiles [file_filter] 指定应加密的 Android 资产文件。资产文件存储在资产目录中,可以包含任何数据。混淆步骤可以自动加密它们并确保它们在运行时动态解密。为了使其工作,资产文件必须进行流式传输,并且它们的名称必须指定为字符串常量。这意味着您的代码必须调用 AsssetManager,如下所示:
open("MyAssetFile")然后,您的配置可以指定“-encryptassetfiles assets/MyAssetFile”。仅适用于混淆 Android 代码。
我使用 Apktool 验证了配置的 APK。我错过了什么?
【问题讨论】:
-
您使用电脑上的程序加密apk文件中的资产文件?
-
不,加密由 DexGuard 处理。
-
完全不清楚你想要发生什么。
-
我不确定哪个部分不清楚。我的问题很简单 - DexGuard 提供资产加密,我想知道应该如何设置选项以启用资产加密,并且我指定了我尝试过的选项没有按预期工作。
-
如果您没有使用电脑上的程序来加密 apk 文件的资产中的文件,那么您在做什么?怎么了?什么时候?在哪里?完全不清楚。
标签: android android-assets dexguard