Я использую DexGuard v7.3.18 и хочу зашифровать файлы JSON, которые хранятся в assets/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.
Я проверил настроенный APK с помощью Apktool
. Что мне не хватает?