問題タブ [android-proguard]
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 - Proguard を有効にすると UserTimeline コールバックが返されない
TweetTimelineListAdapter
fromを使ってFabric
つぶやきの一覧を表示しています。これはプロガードを無効にしても問題なく動作しますが、有効にすると、UserTimeline
オブジェクトはコールバックで成功または失敗を返さなくなります。
ログにエラーや例外はありません。コードをステップ実行すると、ゲスト ログインが成功し、ツイート リクエストが送信されますが、応答が受信されないことがわかります。
ツイートを取得する方法は次のとおりです。
以下は、Fabric docs で推奨されているプロガード構成ファイルと、私が追加したものです。
java - Proguard の難読化により不可解なエラーが発生する
Proguard で難読化されたリリース apk を作成しています。最初の 2 つのルールを追加して、logcat が吐き出す可能性のあるエラーをデコードできるようにしました。
アプリのクラッシュ時のエラーは次のとおりです。
最初の 2 つのルールは、実際の行番号を表示するのに役立ちましたが、'eba' と 'eb' が何を示唆しているのかを理解するのに苦労しています。どんな助けでも大歓迎です。
編集:
ReTrace ツールを使用した後、次のメッセージが表示されました。
android - LEADBOLT 広告プロガード エラー行 1
Proguard を使用している Android アプリケーションに LEADBOLT 広告を統合しました。apk をエクスポートすると、次のエラーが発生します。ここにコンソールエラーと Proguard-project.text を投稿します
Android アプリに AdColony を含めましたが、現在、proguard でアプリをエクスポートしようとしています。こことここで AdColony の構成を見つけました。それらを個別に、または一緒に proguard.cfg に含めようとしましたが、うまくいきません。
コンソール エラー
Proguard ファイル コード
android - 注: 構成はエントリ ポイント「XXX」を保持しますが、Android Studio の記述子クラス「xxx」は保持しません
minifyEnabled
Androidスタジオv1.1.0で有効にすると、次のエラーが発生しました
クラスは次のとおりです。
proguard-rules.proがデフォルトです。
エラーは次のとおりです。
コンパイルエラーを解決するには?
android - proguard の後にエスプレッソ テストを実行する
プロガードの実行後にエスプレッソテストを実行する方法を探しています-これは、設定ミスのプロガードのセーフティネットである必要があります(バターナイフを7.0に更新した後にこれを使用し、プロガード設定を更新するのを忘れました)
android - proguard/dump.txt 出力ファイルの作成を回避することは可能ですか?
proguard から出力される dump.txt ファイルに問題があります。プロガードがそのファイルを生成しないようにします。
私はこの構成で、巨大なAndroidプロジェクトでproguardを使用しています:
- 警告を無視する
- dontobfuscate
logcat で例外の詳細を確認したいので、dontobfuscate を使用します。
この巨大なAndroidプロジェクトには次のプロジェクト構造があるため、多くの警告があるため、ignorewarningsを使用します。
- プロジェクト 1: ランチャー (MyLibrary プロジェクトと Google Play Services の 2 つのライブラリ プロジェクトを参照しています)
- プロジェクト 2: Google Play サービス
- プロジェクト 3: MyLibrary
MyLibrary Project には、参照されている多数の jar とフレームワークがあります。そのため、Launcher プロジェクトで多くのプロガード警告が表示されたため、プロガード構成ファイルに -ignorewarnings を追加しました。
Launcher プロジェクトの proguard フォルダー内に 100MBytes の dumb.txt ファイルがあるのはなぜですか? このファイルの生成を回避するにはどうすればよいですか?
ありがとう
android - Google Play Services and Support V4 with ProGuard... 問題?
最近、Google Play Services と Support V4 の最終バージョン ライブラリを使用して、proguard を巨大なプロジェクトに追加しました。
これらのライブラリについては何も追加せずに、構成ファイルをプロガードします。これを追加するだけです。
ここで、proguard 出力ファイル usage.txt (proguard によって削除されたすべてのコードを確認できます) で、Google Play サービスと Android サポート v4 からの多くのコードであることに気付きました。
公式ドキュメントを確認しましたが、proguard を使用している場合、Support v4 および Google Play サービスの例外を追加することについて何も見つかりませんでした。
注: ProGuard ディレクティブは、必要なクラスを保持するために Play サービス クライアント ライブラリに含まれています。Gradle 用の Android プラグインは、ProGuard 構成ファイルを AAR (Android ARchive) パッケージに自動的に追加し、そのパッケージを ProGuard 構成に追加します。プロジェクトの作成中に、Android Studio は、ProGuard が使用する ProGuard 構成ファイルと build.gradle プロパティを自動的に作成します。Android Studio で ProGuard を使用するには、build.gradle buildTypes で ProGuard 設定を有効にする必要があります。詳細については、ProGuard ガイドを参照してください。
しかし、問題は、私は Android Studio でコンパイルしていないことです。コマンド ラインから ant と eclipse を使用してコンパイルしています。gradle を使用していないため、proguard 構成ファイルに何かを追加する必要があるかどうかわかりません。これに関する公式ドキュメントには何もありません。
これらのライブラリのプロガード構成に何かを追加しないと、将来問題に直面することはありますか?
android - Android アプリケーションの全体的なパフォーマンスを向上させる方法は?
私は自分の Android アプリを縮小して最適化しようとしているので、それを行うためのあらゆる可能性を探しています。ここで私が見つけたもの:
- 不要なオブジェクトの作成を避ける
- 仮想より静的を好む
- 定数に Static Final を使用する
- 内部ゲッター/セッターの使用を避ける
- For ループ構文の強化など。
- 可能であれば、パブリック クラス フィールドの代わりにローカル変数を使用します。
- final キーワードを使用して、値が定数であることを示唆します
- クラスやメソッドの定義などには final キーワードを使用します。
C. を使用する代わりに、リスナーをアクティビティまたはフラグメントにアタッチしてview.setOnClickListener(new View.OnClickListener...)
使用
します。view.setOnClickListener(this)
D. http://www.vogella.com/tutorials/AndroidApplicationOptimization/article.html
E. http://developer.sonymobile.com/2012/01/31/tips-for-reducing-apk-file-size/
- デバッグ情報を削除します。
F. http://hsc.com/Blog/Best-Practices-For-Memory-Optimization-on-Android-1
- 最適化されたデータコンテナを使用する
- Proguard と Zipalign を使用する
G. http://ernelljava.blogspot.se/2012/04/do-not-create-objects.html
- String を過度に使用しないでください。String の操作には StringBuilder を使用してください。
H. https://github.com/futurice/android-best-practices
アプリケーションの最適化に役立つその他のヒントはありますか?