問題タブ [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 - Gradle 同期が Dexguard プラグインで失敗する (Android Studio)
dexguard を私の android/gradle プロジェクトに統合しようとして少し問題があります。
- デックスガード: 5.5.32
- グラドル: 2.2.1
- グラドルプラグイン: 1.3.0
- buildToolsバージョン: 23.0.1
次のエラーが表示されますapply plugin: 'dexguard'
。
編集:
ここに私のアプリのgradleファイルがあります:
あなたの考えは何ですか??
proguard - dexGuard、redEX を proGuard で使用して、broadcastReceiver を難読化する必要があります
DexGuard は、broadcastReceiver を難読化するのに役立ちますか? ブロードキャスト レシーバーの 1 つに重要なアルゴリズムがあり、それを難読化する方法が必要ですが、DexGuard はライセンスを購入する必要がありますか? 無料のプロガード、何か提案はありますか?Facebookでredexをダウンロードするためのリンクが見つからないので、まだ開発中だと思います。だから私の質問は、どれが私のブロードキャストレシーバーを難読化するかということです。
私のproguardファイルには次のような内容があります:
ブロードキャストレシーバーを保持するように指示されていることに注意してください。データを非表示にするにはどうすればよいですか? すべてのロジックを別のクラスに移動しようとする必要がありますが、broadcastreceiver はガベージ コレクションを積極的に取得します。したがって、オプションではありません。
android-studio - Android Studio で Gradle を使用して DexGuard を使用するとデバッグ ビルドが遅くなる
Android Studio で DexGuard を使用すると、デバッグ ビルドが非常に遅くなります。
android - マニフェスト ファイルを難読化から除外する
AndroidManifest.xml が DexGuard によって難読化されるのを防ぐ方法はありますか? MobileIron では、難読化された Android アプリケーションのマニフェストに問題があるようです。「プレーンな」アプリケーションを問題なく処理しますが、難読化されたアプリのマニフェストでエラーをスローします。
編集:
xmlstrings
難読化されたアプリのテーブルに一連の文字列が欠落していることに気付きました。
一方、プレーンアプリのリストは次のとおりです。
それは役割を果たすことができますか、それとも通常の行動ですか?
アプリの単純なバージョンと難読化されたバージョンの両方が、デバイス上で問題なく動作します。
android - Android Studio & Gradle - いくつかのフレーバーを持つ Android ライブラリ モジュールから jar を生成します
私はかなり長い間この問題に苦しんでいますが、オンラインで適切な解決策が見つからないので、ここで助けを求めることにしました.
私は Android Studio を使用して Android Library モジュールを構築しています。私のライブラリには、3 つのビルド タイプ ('release'、'debug'、'releaseDebug') と 2 つのフレーバー (1 つのフレーバー ディメンション): 'generic' と 'custom' が含まれています。各ビルド バリアントの実行の最後に、このライブラリから jar を生成できるようにしたいと考えています。問題は、「Jar」タスクに関するすべての例が、生成された「classes.jar」ファイルを「build/bundles/」からコピーすることを参照していることです。私の場合、「classes.jar」ファイルはそれぞれ異なるパスに生成されますbuildVariant に応じた時間: 'assemblyGenericRelease' の場合、'classes.jar' は 'build/intermediates/bundles/generic/debug/' に生成され、'assemblyCustomDebug' の場合は 'build/intermediates/bundles/custom/debug' などに生成されます。
私の質問は: ビルド プロセス中に生成された「classes.jar」ファイルの場所を取得して、カスタム タスクでコピーして処理できるようにするにはどうすればよいですか?
現在、カスタムタスクを使用して入力「taskRequests」を取得しているため(「gradle.getStartParameters.getTaskRequests.get(0).getArgs()」から)、classes.jar ファイルのパスを解析して取得できますが、かなり醜いので、そうするためのより良い方法があるに違いないと私はまだ信じています。
最後に、私が達成しようとしているのは、この Android ライブラリの 6 つのバリアントを構築することです。各ビルドは「.aar」ファイルと「.jar」ファイルを生成し、「リリース」buildType バリアント - 最終的な「.aar」 & '.jar' も難読化のために DexGuard によって処理されます。
このトピックに関するヘルプをいただければ幸いです。
android - Dexguard の使用により、Attributeset の Android スキーマが難読化される
TextView の作成時に android:textStyle 値を抽出する必要がある Android プロジェクトがあります。これを行うには、AttributeSet で次を呼び出します。
これにより、Dexguard を使用していないときに、xml で設定された正しい textStyle 値が得られます。コードを難読化するとすぐに、このコード片は常にデフォルト値 0 を返します。
なぜこれが起こっているのかを説明する具体的な説明、または推論をまだ見つけていません。したがって、すべての合理的な回答をいただければ幸いです。