1. ホーム
  2. android

[解決済み] Jetifierとは?

2022-10-16 04:02:17

質問

Jetifierとは何ですか?例えば、androidx-packagedの依存関係を使用して新しいプロジェクトを作成する場合、この新しいプロジェクトは、次の行を gradle.properties ファイルに追加します。

android.enableJetifier=true

では、"enable jetifier"" とはどういう意味でしょうか?

どのように解決するのですか?

今年のGoogle I/O(18日)、Googleは開発者の生活を楽にするためのライブラリのセット/コレクションであるJetpackを発表しました。

Jetpackは、以前に紹介されたAndroidアーキテクチャのコンポーネント(ViewModel、Room、Paging、LiveDataなど)と、WorkManager、Navigationなどの新しく紹介されたアーキテクチャのコンポーネントを含んでいます。これとは別に、Jetpack は AndroidX、AndroidKTX などの他のライブラリのセットも持っています。

AndroidXは、サポート、データバインディング、デザインなどのAndroidサポートライブラリのための新しいパッケージ構造です。

例:今後、開発者は androidx.databinding. の代わりに android.databinding. プロジェクトでライブラリをインポートする際に

これによって、Googleは SemVer または セマンティックバージョニング をライブラリパッケージに追加しました。これは開発者にとっては、すべてのサポートライブラリに同じバージョンを使う必要がないことを意味します。これは、すべてのサポートライブラリに同じバージョンを使用する必要がないことを意味し、AndroidXライブラリは、独自のバージョン管理を行います。

開発者にとってのもう一つの利点は、プロジェクト内のすべてのサポートライブラリについて同じバージョンを維持することを気にする必要がないことです。

Jetifierについてですが、Jetifierはビルド時に依存関係のあるサポートパッケージを全て変換します。 Jetifierの公式ドキュメントによると

Jetifierは、サポートライブラリに依存するライブラリを、同等のAndroidXパッケージに依存するように移行するツールです。 移行します。このツールは、Android gradle を使用する代わりに、個々のライブラリを直接移行することができます。 Android Studioに同梱されているAndroid gradleプラグインを使用する代わりに、個々のライブラリを直接移行することができます。 プラグインを使用する代わりに、個々のライブラリを直接移行することができます。

プロジェクトでAndroidXを使用するには、プロジェクトのtargetSdkVersionを 28 に設定し、以下の2行を gradle.properties ファイルに追加します。

android.useAndroidX=true

android.enableJetifier=true

これであなたの質問に答えられると思います。

EDIT

このリンク には、すべてのサポートライブラリーコンポーネントとAndroidXの対応表があります。

また、次のリンクも参照してください。 この のブログでAndroidXについて詳しく説明しています。