このバージョンの Android プラグインには、次のものが必要です。
-
新しい lint チェック依存関係コンフィグレーション: の動作が変更され、新しい依存関係コンフィグレーション が導入されました。これにより、Android ライブラリにパッケージ化される lint チェックを細かく制御できるようになりました。
- : プロジェクトをローカルでビルドするときだけ実行する、lint チェックに使用する既存の構成。以前に 依存関係コンフィグレーションを使用して公開 AAR に lint チェックを含めていた場合は、これらの依存関係を移行して、下記の新しい コンフィグレーションを使用する必要があります。
- : 下記のように、公開 AAR に含める lint チェックに使用する、ライブラリ プロジェクトの新しいコンフィグレーション。つまりライブラリを使用するプロジェクトでも、これらの lint チェックを適用します。
次のコードサンプルでは、ローカルの Android ライブラリ プロジェクトで両方の依存関係コンフィグレーションを使用しています。
-
一般に、パッケージ化と署名のタスクで、全体的なビルド速度が改善されています。これらのタスクに関連してパフォーマンスの低下が見られた場合は、バグを報告してください。
-
Android Instant Apps Feature プラグイン非推奨の警告: インスタント アプリのビルドに依然として プラグインを使用している場合、Android Gradle プラグイン 3.4.0 では、非推奨の警告がスローされます。今後のバージョンのプラグインでもインスタント アプリをビルドできるようにするには、動的機能プラグインを使用するようにインスタント アプリを移行します。またこれにより、インストール済みアプリとインスタント アプリの両方のエクスペリエンスを、単一の Android App Bundle から公開できます。
-
R8 をデフォルトで有効化: R8 は、desugar、圧縮、難読化、最適化、dex 変換をすべて 1 つのステップに統合し、ビルド パフォーマンスを大幅に改善します。R8 は Android Gradle プラグイン 3.3.0 で導入されました。現在は、3.4.0 以上のプラグインを使用するアプリ プロジェクトと Android ライブラリ プロジェクトの両方で、デフォルトで有効になっています。
R8 を使用していて問題が発生した場合は、R8 の互換性に関するよくある質問を参照して、該当の問題の解決策があるかどうかを確認してください。解決策が記載されていない場合は、バグを報告してください。R8 を無効にするには、次のいずれかの行をプロジェクトの ファイルに追加します。
- は非推奨: を使用してネイティブ ライブラリをコンパイルしようとすると、ビルドエラーが発生するようになりました。代わりに CMake か ndk-build を使用して、プロジェクトに C / C++ コードを追加する必要があります。
-
一意のパッケージ名を正しく使用することは現在必須ではありませんが、プラグインの今後のバージョンでは、より厳密になります。Android Gradle プラグインのバージョン 3.4.0 では、次の行を ファイルに追加することで、使用可能なパッケージ名をプロジェクトで宣言しているかどうかの確認をオプトインできます。
Android Gradle プラグインを使用してパッケージ名を設定する方法について詳しくは、アプリケーション ID の設定をご覧ください。