AndroidX への移行

AndroidX は、オリジナルの Android サポート ライブラリを大幅に改良したもので、androidx.* プラットフォーム API からバンドルされていないパッケージ ライブラリを提供します。

よくある質問

既存のアプリ、プラグイン、ホスト編集可能なモジュール プロジェクトを AndroidX に移行するにはどうすればよいですか。

  • Open an existing Android Studio Projectを選択します。
  • Open the android directory within your app.
  • Wait until the project is successfully synced. (プロジェクトを開くと自動的に行われますが、行われない場合は、[File] メニューから [Sync Project with Gradle Files] を選択します。)
  • Refactor メニューから [Migrate to AndroidX] を選択します。
  • 先に進む前にプロジェクトをバックアップするか聞かれた場合は、Backup project as Zip file にチェックし、Migrate をクリックします。 最後に、Zip ファイルを任意の場所に保存します。 プロジェクトを zip ファイルとしてバックアップを選択
  • リファクタリング プレビューでは、変更点のリストが表示されます。 最後に、[リファクタリングを実行] をクリックします。 Android でのボトムアップ ページ遷移のアニメーション
  • 以上です。
  • 最後に、プラグインを移行した場合、新しい AndroidX バージョンを pub に公開し、この新しいバージョンが AndroidX と互換性があることを示すために CHANGELOG.md を更新してください。

    新しいプロジェクトを作成するには、以下を実行します。

    flutter create -t <project-type> <new-project-path>

    Add to App

    あなたの Flutter プロジェクトが既存の Android アプリに追加するモジュール タイプで、.android ディレクトリを含む場合、pubspec.yaml に次の行を追加します:

     module: ... androidX: true # Add this line.

    最後に、flutter clean を実行してください。

    もしあなたのモジュールが android ディレクトリを含んでいるなら、前のセクションのステップに従ってください。

    How do I know if my project is using AndroidX?

    Flutter v1.12.13 以降、flutter create -t <project-type> で作成した新しいプロジェクトはデフォルトで AndroidX を使用します。

    この Flutter バージョンより前に作成されたプロジェクトは、古いビルド アーティファクトまたは古いサポート ライブラリ クラスに依存してはなりません。

    アプリまたはモジュール プロジェクトでは、ファイル android/gradle.properties または .android/gradle.properties には次のものが含まれている必要があります。 しかし、AndroidX とサポート アーティファクトを組み合わせることは、依存関係の競合や他の種類の Gradle の失敗を引き起こす可能性があるため、一般に推奨されません。 その結果、より多くのプラグインが AndroidX に移行すると、Android コア ライブラリに依存するプラグインはビルドに失敗する可能性が高くなります。

    私のアプリが AndroidX に移行されたが、私が使用しているすべてのプラグインではない場合はどうなりますか。

    Flutter ツールは Jetifier を使用して、サポート ライブラリを使用する Flutter プラグインを AndroidX に自動的にマイグレートしますので、AndroidX にマイグレートされていなくても同じプラグインを使用できます。

    コメントする