2つのAndroid Studioアプリケーションを作成しました。それらの1つはaarライブラリです。このaarライブラリを2番目のアプリケーションで使用しました。 File-> New-> New Module-> Import AAR/JAR Packagesオプションを使用してaarライブラリを追加しました。その後、私はaarライブラリの逆コンパイルされたソースを見ることができます。 aarライブラリを更新するとき、新しいaarファイルをコピーしてアプリケーションプロジェクトフォルダーに貼り付けます。ただし、今回はAndroid Studioに古いデコンパイル済みソースが表示されます。しかし、新しいソースを正常にコンパイルします。 Android Studioで逆コンパイルされたソースを更新するにはどうすればよいですか? aarファイルimplementation project(':app-debug')
行をインポートすると、build.gradle
ファイルが追加されました。
Android Studio 3.0.1を使用しています
私の解決策
ローカルソースを更新する唯一の方法は、aar/jarファイルを更新した後にGradleファイルとプロジェクトを同期ボタンをクリックすることです。
私は同じ問題を抱えていて、プロジェクトにローカルaarを含めるあらゆる形式を試し、キャッシュの再構築、無効化などのあらゆる方法を試しましたが、ファイルを更新した後にローカルaarの変更が利用できないという問題がまだありましたlibsフォルダー内。
私のために働いた唯一のものはこれでした:
これで、yourlib.aarの変更がプロジェクトで利用可能になります。このライブラリが複数のモジュールに含まれている場合、各モジュールでそれを行う必要があると思います。理想的ではありませんが、私はこの問題に少なくとも5時間を費やしました。これらの手順は、変更を強制することができる唯一の方法でした。ライブラリをgradleファイルから削除してから同期すると、新しいライブラリが再び追加されたときに強制的に新しいライブラリが選択されると推測しています。
私は同じ問題を抱えていて、次のことを非常に迅速に解決しました:
これは、プロジェクトとして含まれるAARのためです(ファイル->新規->新規モジュール...-> .JAR/.AARパッケージのインポートを使用するときに含まれます)。
現在、project
表記でAARを含めています。 AARは文字通り単なるファイルであるため、代わりにfiles
表記で含める必要があります。
次のようなフォルダー構造を仮定します。
app/build.gradle
の依存関係ブロックには、次のいずれかの行のファイルを含めることができます。
// include just my_library
implementation files('libs/my_library.aar')
// include just other_library
implementation files("$rootDir/common/libs/other_library.aar")
// include both libraries
implementation files('libs/my_library.aar', "$rootDir/common/libs/other_library.aar")
ところで、サポートされている依存関係タイプの合理的な完全なリストが https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.dsl.DependencyHandler.html にあります。
Windowsエクスプローラーで.arrファイルを置き換えた後。私のために働いた唯一のものは、ファイル->キャッシュの無効化/再起動です
Gradleプロジェクトと設定のコメント/コメント解除と再同期に加えて、build-cacheディレクトリ全体を削除する必要がありました。
Macの場合:〜/ .Android/build-cache/Windows:このディレクトリの場所が不明です。