Android Plugin for Gradle リビジョン 1.5.0(2015 年 11 月)
- 依存関係:
- 一般的な注意事項:
-
- データ バインディング プラグインを Android Plugin for Gradle に統合しました。有効にするには、プラグインを使用する各プロジェクトの
build.gradle
ファイルに次のコードを追加します。 - 新しい Transform API を追加しました。これにより、
.dex
ファイルに変換する前にコンパイル済みの.class
ファイルをサードパーティ プラグインで操作できるようになりました。Transform API を使用すると、カスタムクラス操作の挿入が簡単になると同時に、操作可能な対象に関して柔軟性が高まります。変換をビルドに挿入するには、いずれかのTransform
インターフェースを実装する新しいクラスを作成し、android.registerTransform(theTransform)
かandroid.registerTransform(theTransform, dependencies)
に登録します。タスクをつなぎ合わせる必要はありません。Transform API に関する注意事項は次のとおりです。 - 変換は、現在のプロジェクト、サブプロジェクト、外部ライブラリの 1 つまたは複数に適用できます。
- 変換はグローバルに登録する必要があり、すべてのバリアントに適用されます。
- Java Code Coverage Library(JaCoCo)、ProGuard、MultiDex による内部コード処理で、Transform API を使用するようになりました。ただし、Java Android Compiler Kit(Jack)はこの API を使用しません(
javac/dx
コードパスだけが使用します)。 - Gradle は、変換を JaCoCo、サードパーティ プラグイン、ProGuard の順に実行します。 サードパーティ プラグインの実行順序は、サードパーティ プラグインによって変換が追加される順序と一致します。サードパーティ プラグインの開発者は、API を介して変換の実行順序を制御できません。
ApplicationVariant
クラスからdex
ゲッターが非推奨になりました。 変換を介して実行されるようになったため、Dex
タスクにバリアント API を介してアクセスできなくなりました。現在、dex プロセスを制御する代替手段はありません。- アセットの増分サポートを修正しました。
- テスト プロジェクトで使用できるように MultiDex のサポートを改善し、テストが自動的に
com.android.support:multidex-instrumentation
依存関係を持つようになりました。 - Gradle ビルドが非同期タスクを呼び出し、ワーカー プロセスで障害が発生した場合に、Gradle ビルドが適切に失敗し、根本的なエラー原因を報告する機能を追加しました。
- 複数のアプリケーション バイナリ インターフェース(ABI)が含まれるバリアントで特定の ABI を設定するためのサポートを追加しました。
- テストのインストール時や実行時の、
ANDROID_SERIAL
環境変数に対するデバイス シリアル番号のカンマ区切りリストのサポートを追加しました。 - Android 5.0(API レベル 20)以降を実行しているデバイスで、APK 名にスペースが含まれているとインストールが失敗する問題を修正しました。
- Android Asset Packaging Tool(AAPT)のエラー出力に関連する、さまざまな問題を修正しました。
- JaCoCo 増分インストゥルメンテーションのサポートを追加し、増分ビルドを高速化しました。Android Plugin for Gradle は、JaCoCo instrumenter を直接呼び出します。新しいバージョンの JaCoCo instrumenter を強制するには、ビルド スクリプトの依存関係として追加する必要があります。
- クラスでないファイルを無視するように、JaCoCo のサポートを修正しました。
- 下位互換性のために、ビルド時に PNG を生成するためのベクター型ドローアブルのサポートを追加しました。
Android Plugin for Gradle は、API バージョンを指定しない、またはアプリのマニフェストの
<uses-sdk>
要素で 20 以下のandroid:minSdkVersion
属性を指定するリソース ディレクトリにあるすべてのベクター型ドローアブルに対して、PNG を生成します。build.gradle
ファイルのdefaultConfig
かproductFlavor
のセクションでgeneratedDensities
プロパティを使用すると、PNG 密度を設定できます。 - プラグインが一度だけ生成して単体テストに使用する、モック可能な
android.jar
の共有を追加しました。app
やlib
などの複数のモジュールで共有されるようになりました。再生成するには$rootDir/build
を削除します。 - APK のパッケージ化中ではなく、難読化タスクの前に Java リソースを処理するように変更しました。この変更により、難読化タスクは、パッケージの難読化に続いて Java リソースを適応させることができます。
- 試験運用版ライブラリ プラグインで Java Native Interface(JNI)コードを使用する際の問題を修正しました。
- 試験運用版ライブラリ プラグインの
android:compileSdkVersion
属性とは別にプラットフォームのバージョンを設定する機能を追加しました。
android { dataBinding { enabled = true } }
android { dataBinding { enabled = true } }
- データ バインディング プラグインを Android Plugin for Gradle に統合しました。有効にするには、プラグインを使用する各プロジェクトの
最小バージョン | デフォルトのバージョン | 備考 | |
---|---|---|---|
Gradle | 2.2.1 | 2.2.1 | 詳細については、Gradle のアップデートをご覧ください。 |
SDK Build Tools | 21.1.1 | 21.1.1 | SDK Build Tools をインストールまたは設定します。 |