問題タブ [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.
android - DexGuard はどのようにクラスを暗号化しますか?
DexGuard の動作を確認したいのですが、無料の試用版がないようです。
DexGuard は Android アプリケーションを暗号化できますか? それとも単にコードを難読化するだけですか? DexGuard 暗号化はどのように機能しますか? 逆コンパイルの前後に DexGuard で実行されるサンプル アプリケーションのコードを提供できれば、それは素晴らしいことです。
android - NoSuchMethodError でのクラスの除外は、DexGuard では機能しません
アプリケーションを dexguard した後、アプリケーションの実行時にこのエラーが発生しました
問題ありません。そのクラスを難読化から除外するだけです。しかし、dexguard-project.txt ファイルに何を含めようとしても問題ありません。エラーが発生し続けます。
私が試したいくつかのこと
-keep public class javax.xml.parsers.**
-keep public class javax.xml.parsers.DocumentBuilder
-keep public abstract class javax.xml.parsers.DocumentBuilder
-keep class javax.xml.parsers.DocumentBuilder.** { *; }
-keep public abstract class javax.xml.parsers.DocumentBuilder.** { *; }
-keep public class javax.xml.parsers.** { *; }
-keep public class javax.xml.parsers.DocumentBuilder.** {public private protected *;}
-keepclassmembers class javax.xml.parsers.DocumentBuilder { public abstract void setEntityResolver (org.xml.sax.EntityResolver); }
-keepclassmembers public abstract class javax.xml.parsers.DocumentBuilder { public abstract void setEntityResolver (org.xml.sax.EntityResolver); }
次のフラグで実行しています。
したがって、明らかに問題は難読化のステップにあります。
はい、難読化を無効にすると、問題なく動作します。
明示的に除外するように要求した後でも、エラーが発生し続けるため、明らかに何か間違っています。
正しく除外していますか?他に間違っているように見えるものはありますか?
android - Dexguard 5.3.28 フォントの問題
アプリを Dexguard 5.3.28 (最新バージョン) にアップグレードしましたが、フォント関連の問題に直面しています。新しいバージョンの dexguard がアセットを難読化することは知っていますが、これが問題である可能性があると思います。5.0.34 などの古いバージョンでは、問題はありませんでした。
otf フォントは assets/fonts/ ディレクトリに保存されます。カスタム TextView を使用してフォントを設定します: xmlns:custom="http://schemas.android.com/apk/res/com.XXXX.XXXX.XXXX.XXX"
問題のあるフォントの設定はうまく機能しますが、すべての CustomTextViews を変更することはできません。-keepdirectories、-keep CusomTextView を使用しようとしましたが、結果はありませんでした。
更新: 何らかの理由で attr.xml ファイルが難読化されており、ここで何かが間違っていると思います。
attr.xml を難読化しない方法はありますか? または他の提案はありますか?
android - Android Studio と Dexguard
AndroidスタジオでDexguardを実行しようとしています。しかし、プロジェクトをビルドできません。
行 " " で例外が発生しましたapply plugin 'dexguard'
。
例外はCannot add task ':XXXX:uninstallAll' as a task with that name already exists.
スタックトレースは次のとおりです。
編集:
dexguard プラグイン自体は「android」プラグインを使用しています。「android」プラグインも適用していて、例外が発生していました。
android - dexguard:Activity クラスの文字列を暗号化しますか?
dexguard: -encryptstrings コマンドは Activity クラスで使用できますか?
使っているとうまくいかないので質問しています
-暗号化文字列
パブリック クラス com.example.my.MainActivity
また
-暗号化文字列
com.example.**MainActivity
また、Antログには次のように書かれています:
「暗号化された文字列参照の数: 0」
android-uiautomator - UiAutomator と Monkey を使用した DexGuard (モンキー ランナーではない)
Dexguard によって難読化されたアプリの ui テストを自動化するために uiautomator または monkey を使用した人はいますか? あなたの経験を共有していただけますか?uiautomator が resourceID/Text などでウィジェットを識別できるか、またはアプリのパッケージ名が難読化された後もモンキーがランダム イベントを実行できるかどうか。
android - エラーが発生した場合、DexGuard をエラー状態で終了させる方法はありますか?
現在、Jenkins サーバーで ANT を使用して Android アプリケーションを構築しています。
DexGuard は、custom_rules.xml でリリース時に実行するように設定されています。
現在、DexGuard がメソッドを変換しようとするときに問題があります。
私の質問は、ANT または Jenkins がビルドを失敗としてマークできるように、DexGuard をエラー ステータスで終了させる方法はありますか?
現時点では、単にスタック トレースを出力して続行します。
現在、Jenkins の Text-finder プラグインをビルド後のステップとして使用して、DexGuard 例外に一致させています。見つかった場合、ビルドを失敗にダウングレードします。