I. 概要
Flutter は、開発者が
IOS と Android の両方のプラットフォームで高品質のネイティブ UI を開発できるようにする Google のモバイル SDK です。1 つのコードで、IOS と Android 用の 2 つの高性能で忠実度の高いアプリケーションを同時に生成できます。
2. レンダリングの仕組み
Flutter がネイティブと同等、またはそれ以上のエクスペリエンスを実現できる理由は、主にその高性能グラフィック レンダリング機能によるものです。まず、Flutter のレンダリング メカニズムをネイティブ Android および他のクロスプラットフォーム フレームワーク (RN など) と比較します。 )、以下に示すように:
- Android ネイティブ アプリが描画するとき、最初に Android フレームワークの Java コードを呼び出し、次に Skia (c/++) 描画エンジンを呼び出し、最後にデバイス上でのレンダリングを完了するための CPU/GPU 命令を生成します。
- Flutter が描画しているとき、ホームページは Flutter Framework の Dart コードを呼び出し、次に Skia (c/++) 描画エンジンを直接呼び出し、最後にデバイス上でレンダリングするための CPU/GPU 命令を生成します。
- 他のクロスプラットフォーム フレームワーク (RN など) は、最初にそのフレームワークの JavaScript コードを呼び出してから、ネイティブ フレームワークよりも 1 つ多いレイヤーである Android フレームワークの Java コードを呼び出します。 1つ。
Flutter と Android はネイティブであることがわかり、Flutter Framework の Dart コードの効率が Android Framework の Java コードの効率と同等である限り、Flutter アプリはネイティブと同等のパフォーマンス エクスペリエンスを実現できることが理解できます。
さらに、Flutter で使用される Skia レンダリング エンジンは Flutter sdk の一部であり、Flutter sdk のアップグレードとともにアップグレードされます。ネイティブの Skia レンダリング エンジンは、Android オペレーティング システムのアップグレードとともにアップグレードする必要があります。そのため、パフォーマンスの向上は、 Skia エンジンが影響を受け、よりタイムリーに Flutter アプリに影響します。
3. 環境構築
-
Flutter SDKをダウンロード
-
環境変数を更新し、
FLUTTRE_HOME
変数を追加します。値は Flutter インストール パッケージの場所であり、次のPATH
場所に追加します。%FLUTTER_HOME%\bin
-
これを実行する
fluuter doctor
と、まだインストールされていないソフトウェアが検出されます。[X] は、インストールする必要があることを示します。 -
Android Studioをインストールします。インストール プロセス中に自動的にインストールされます
Android SDK
。(ステップ 7 もこの IDE で実行されます) -
開く
file>settings
、インストールするDart
、Flutter
プラグイン
-
コマンドラインのライセンス認証を入力します。
flutter doctor --android-licenses
-
開く
file>settings
、入力するAndroid SDK
、インストールするcmmmand-line tools
-
ソースを変更し、次の 2 つの環境変数を追加します。
PUB_HOSTED_URL = https://pub.flutter-io.cn FLUTTER_STORAGE_BASE_URL = https://storage.flutter-io.cn
-
SDK
環境変数を追加する
//新增系统变量
ANDROID_HOME=C:\Users\SC9535\AppData\Local\Android\Sdk
//新增Path
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\cmdline-tools
%ANDROID_HOME%\emulator
上記の設定をすべて完了した後、再度実行するflutter doctor
と、次のように表示されます。
Visual Studio
当分の間 Windows デスクトップ プログラムを開発する必要がないため、この IDE がインストールされていないことを除けば、その他はすべて正常にインストールされています。
4. エミュレータをインストールする
1. 手順
Android Studio
右側を開いて「シミュレーターの作成」DeviceMachine
をクリックしますCreate Device
。
画像を選択する場合は、x86 を選択することをお勧めします。(インストールされていない場合はhamx
、インターフェイスに赤いインストール プロンプトが表示されます。インストールを入力するだけです)
[完了]をクリックします
2. 走る
调试
上のボタンをクリックすると、起動完了後に下のシミュレータウィンドウが表示されます。
この時点で、基本的な環境とシミュレータの構成は完了です。
5. シミュレータを実行するその他の方法
1. VS Code がシミュレーターを実行します
Android Studio
でシミュレータを作成した後、VS code
開発に切り替えると、vs code
シミュレータを実行することもできます。
まず、VS code
右下隅でエミュレータを起動します。
Android Studio
上記のように、「Nexus 5 API 30-Test」で作成したエミュレータを選択します。「起動」を選択すると、アプリケーションが開いていない状態で初期エミュレータが表示されます。
terminal
最後に、コマンド ラインを開いてflutter run
コマンドを実行すると、以下に示すように、シミュレーターが現在のアプリを自動的に実行します。
2. コマンドラインからシミュレータを実行します。
まず、環境変数にANDROID_HOME
変数が含まれていることを確認する必要があります。
- このマシンでどのシミュレータが使用できるかを確認するには、次のコマンドを使用してクエリを実行します。
%ANDROID_HOME%\emulator\emulator.exe -list-avds
- 指定したエミュレータを起動すると以下が有効になります
Nexus_5_API_30-Test
。
%ANDROID_HOME%\emulator\emulator.exe -netdelay none -netspeed full -avd Nexus_5_API_30-Test
シミュレーションの実行が開始されます。
6. よくある質問
1、Androidエミュレータは不正です
方法 1:
エミュレータデータを消去する
方法 2:
- すべてのエミュレータを終了します
- ~/.android/adbkey と ~/.android/adbkey.pub を削除します
- adb キルサーバー
- adb devices AVD のデータを消去
- エミュレータを再起動する
推奨読書: Windows プラットフォームでの Flutter UI システム Flutter のインストールと構成
について