.aarアーカイブを作成できます。はい。このことについて知っているいくつかのこと:
- AARは、ライブラリプロジェクトとして構築されている、のGradleプラグイン「com.android.library」
- とあなたはまだ依存関係を宣言するシェルアプリケーションのプロジェクトを持っている必要がありますライブラリから構築されたaarに。
- aarには独自のマニフェストとリソースがあります。マニフェストとリソースはがシェルアプリケーションのマニフェストにマージされます。マニフェスト合併のプロセスを理解することをお勧めします。
- もちろん、aarには独自のコードがあり、シェルアプリケーションはaarに含まれるクラスを複製できません。
- シェルアプリケーションは、独自のbuild.gradle内の独自のアプリケーションIDと、 'com.android.application'プラグインで構築されたアプリケーションに必要なその他の必須プロパティを宣言する必要があります。
- アプリケーション設定は、aarの設定と競合することはありません。たとえば、aarの最小値よりも低いAPIレベルをターゲットにすることはできません。
- アプリケーションは、aarで定義されたリソースをオーバーライドできません。それは別の方法です - ライブラリは、アプリケーションで定義されたリソースをオーバーライドします。
アプリのファイル構造に直接AARを含めている場合は、この(または類似)のような、それへの依存性を宣言する必要があります:
repositories {
flatDir {
dirs 'libs' // place the aar in here
}
}
dependencies {
compile(name:'fileNameOfAarWithoutExtension', ext:'aar')
}
しかし、あなたが配布している場合あなたはmaven依存関係として、単にmaven座標を使うことができます。
他にも知っていることがあるかもしれませんが、それは私の頭の上から考えることができます。
[library modules](http://developer.android.com/tools/projects/index.html#LibraryModules)を作成することは間違いありません。これはリンク先のチュートリアルでカバーされ、JARに焦点を当てた古い資料が散在しています。あなたが "コミュニケーションのために意図を使う"かどうかは、あなたがライブラリとアプリケーションの両方を書くので、あなた次第です。 – CommonsWare
私は実際にできるように見えます。 aarファイル。 http://tools.android.com/tech-docs/new-build-system/aar-format https://androidbycode.wordpress.com/2015/02/23/building-an-aar-libraryイン・アンドロイド・スタジオ/ – gmmo