前提
開發電腦需為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(可以從右上角的執行按鈕左側下拉找到)
2.在右下角點選 + New Emulator
, 彈出選擇模擬器視窗,如果映象還沒有下載,方框處會出現下載按鈕,先點選下載,下載完成後點選 Next
建立模擬器,再點選 Previous
建立成功
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
來源:堅果派
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。