<

既存のアプリに Flutter を追加する

アプリに追加

アプリケーション全体を書き直すのは現実的ではない場合があります。 一気にバタバタ。そういった状況に対しては、 Flutter は既存のシステムに統合できます アプリケーションをライブラリまたはモジュールとして部分的に作成します。 そのモジュールは Android または iOS にインポートできます。 (現在サポートされているプラ​​ットフォーム) アプリを使用して、 Flutter でのアプリの UI。または、共有 Dart ロジックを実行するためだけに。

いくつかの手順で、生産性と表現力を向上させることができます。 独自のアプリに飛び込みます。

add-to-appこの機能は、任意の画面サイズの複数のインスタンスの統合をサポートします。 これは、混合されたハイブリッド ナビゲーション スタックなどのシナリオに役立ちます。 ネイティブ画面と Flutter 画面、または複数の部分画面 Flutter を含むページ ビュー。

複数の Flutter インスタンスがあると、各インスタンスを維持できるようになります。 最小限の使用時の独立したアプリケーションと UI の状態 メモリリソース。詳細については、複数の flutterページ。

サポートされている機能

Android アプリケーションに追加する

Add-to-app steps on Android
  • を追加して、Flutter モジュールを自動ビルドしてインポートします。 Flutter SDK を Gradle スクリプトにフックします。
  • Flutter モジュールを汎用モジュールにビルドします。Android アーカイブ (AAR)あなたのものに統合するために 独自のビルド システムと Jetifier の相互運用性の向上 AndroidXを搭載。
  • FlutterEngine起動および永続化のための API Flutter 環境は、FlutterActivity/FlutterFragment
  • Android Studio Android/Flutter 共同編集およびモジュール 作成/インポートウィザード。
  • Java および Kotlin ホスト アプリがサポートされています。
  • Flutter モジュールで使用できるもの flutterプラグイン対話します プラットフォームと一緒に。
  • Flutter デバッグとステートフル ホット リロードのサポート 使用してflutter attachIDE またはコマンドラインから Flutter を含むアプリに接続します。

iOS アプリケーションに追加する

Add-to-app steps on iOS
  • Flutter を追加して、Flutter モジュールを自動ビルドしてインポートします。 SDK は CocoaPods と Xcode ビルド フェーズにフックします。
  • Flutter モジュールを汎用モジュールにビルドします。iOSフレームワーク独自のビルド システムに統合するために。
  • FlutterEngine起動および永続化のための API Flutter 環境は、FlutterViewController
  • Objective-C および Swift ホスト アプリがサポートされています。
  • Flutter モジュールで使用できるもの flutterプラグイン対話します プラットフォームと一緒に。
  • Flutter デバッグとステートフル ホット リロードのサポート 使用してflutter attachIDE またはコマンドラインから Flutter を含むアプリに接続します。

私たちのを参照してくださいアプリに追加する GitHub サンプル リポジトリインポートする Android および iOS のサンプル プロジェクトの場合 UI 用の Flutter モジュール。

始めましょう

開始するには、プロジェクト統合ガイドを参照してください。 アンドロイドとiOS:

APIの使用法

Flutter がプロジェクトに統合された後、 次のリンクにある API 使用ガイドを参照してください。

制限事項

  • 複数の Flutter ライブラリを 1 つにパックする アプリケーションはサポートされていません。
  • サポートしていないプラグインFlutterPlugin予想外のことがあるかもしれない アプリへの追加では維持できない仮定を行った場合の動作 (Flutter であると仮定するなど)Activity常に存在します)。
  • Android では、Flutter モジュールは AndroidX アプリケーションのみをサポートします。