鴻蒙Flutter實戰:12-使用模擬器開發除錯

zacks發表於2024-11-10

前提

開發電腦需為M系列晶片 (ARM架構) 的 Mac 電腦

目前 Flutter 鴻蒙開發,無法使用 X86 架構的模擬器,只能使用 ARM 架構的模擬器**

建立專案

等開發環境搭建成功,使用 flutter create 命令建立專案

新專案

flutter create --platforms ohos ohos_app

舊專案增加鴻蒙平臺支援

flutter create --platforms ohos .

簽名

使用 DevEco 開啟上面專案中的 ohos 目錄,也就是我們的鴻蒙專案目錄

開啟 File -> Project Structure..., 點選 Siging Configs, 勾選 Automatically generate signature,

點選 Sign In, 登入華為賬號,點選右下角 Apply, OK, 完成簽名。

觀察控制檯會輸出 Process finished with exit code 0的提示

> hvigor WARN: The current module 'ohos' has dependency which is not installed at its oh-package.json5.
> hvigor Finished :entry:init... after 1 ms
> hvigor Finished ::init... after 1 ms

Process finished with exit code 0

建立模擬器

1.開啟 DevEco 中的 Device Manager(可以從右上角的執行按鈕左側下拉找到)

image.png

2.在右下角點選 + New Emulator, 彈出選擇模擬器視窗,如果映象還沒有下載,方框處會出現下載按鈕,先點選下載,下載完成後點選 Next 建立模擬器,再點選 Previous 建立成功

image.png

3.回到模擬器列表視窗,列表中出現了新建的模擬器,點選執行按鈕, 模擬器執行成功。

運動 Flutter 專案

Vscode中右下角應當出現模擬器的裝置,行如 127.0.0.1:5555(ohos-arm64), 如果沒有出現參考注意事項中的說明 2 操作。

回到 Vscode 中的Flutter 專案,像普通的 flutter 專案那行,點選執行按鈕。

注意事項

1. Flutter 執行 App,打包安裝成功, 執行閃退 從以下方面檢查:

1.1 如果是 X86電腦架構的模擬器,嘗試刪除 main.dart 中的 FloatingActionButton
1.2 如果 Flutter SDK 使用的 ohos-3.22, 嘗試關閉 impeller 渲染方式,開啟或建立檔案 ohos/entry/src/main/resources/rawfile/buildinfo.json5, 增加以下配置

{
   "string": [
      {
         "name": "enable_impeller",
         "value": "true"
      }
   ]
}

2.VSCode 中模擬器裝置不顯示

2.1 嘗試使用 Deveco 開啟專案的 ohos 目錄(即鴻蒙專案檔案),等待初始化分析成功
2.2 嘗試重啟 VSCode

3.使用 fvm 時,專案目錄下 flutter --version 顯示不正確,不是 ohos 版本

以次按以下的方式進行逐個嘗試,直至成功。

3.1 嘗試在 vscode 的命令列中執行 fvm use custom_3.22.0, 待命令建立 .vscode/setting.json 檔案並在其中增加類似這樣的配置

{
  "dart.flutterSdkPath": ".fvm/versions/custom_3.22.0"
}

專案根目錄中出現 .fvm/version/custom_3.22.0 這樣的目錄檔案,專案根目錄出現 .fvmrc 檔案,其內容類似如下

{
  "flutter": "custom_3.22.0"
}

3.2 嘗試重啟 VsCode 的命令列,或者重啟整個 VsCode,待重新開啟 VSCode 命令列以後,flutter --version 出現這樣的輸出

Flutter 3.22.0-ohos • channel oh-3.22.0 • https://gitee.com/harmonycommando_flutter/flutter.git
Framework • revision 85630b0330 (13 天前) • 2024-10-26 02:39:47 +0000
Engine • revision f6344b75dc
Tools • Dart 3.4.0 • DevTools 2.34.1

3.3 關閉全域性 flutter 配置

~/.zshrc~/.bash_profile中,刪除或者註釋掉類似這樣的配置,重啟命令列/VSCode

#export PATH="/Users/zacksleo/flutter/bin:$PATH"

作者:星釋
連結:https://www.nutpi.net/thread?topicId=92
來源:堅果派
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。

相關文章