今天將flutter作為模塊嵌入我們老的iOS項目中,編譯沒有報錯添履,但是運行時一直出現(xiàn) "unable to install "的錯誤,無法安裝的手機。之前在Demo中是可以運行的庄涡,查閱一番資料后,找到了解決辦法搬设,記錄一下啼染。
前提是你已經(jīng)配置好了flutter開發(fā)環(huán)境,沒有配的小伙伴可以去flutter中文網(wǎng)焕梅,按照教程配置就可以了迹鹅!
- 創(chuàng)建 flutter module:
cd 到項目文件的同級目錄下;
執(zhí)行命令:(my_flutter: 文件名稱贞言,可修改)
flutter create -t module my_flutter
- 通過cocoapods添加依賴
在項目的Podfile文件中添加如下代碼:
#其中flutter_application_path為flutter模塊相對于podfile文件的位置斜棚。
flutter_application_path = '/Users/admin/Desktop/flutter項目/my_flutter'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')
target 'yiguan' do
use_frameworks!
# Flutter 本地開發(fā)調(diào)試
install_all_flutter_pods(flutter_application_path)
target 'yiguanTests' do
inherit! :search_paths
end
end
更新pods
pod install
-
添加腳本
在iOS項目中找到Xcode -> Target -> Build Phase 位置,點擊?好该窗,選擇New Run Script Phase弟蚀;然后把以下兩行命令放進去。"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build "$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed
-
編譯項目
如果報如下錯誤:/bin/sh: /packages/flutter_tools/bin/xcode_backend.sh: No such file or directory
需指定FLUTTER_ROOT路徑酗失,在 my_flutter/.ios(隱藏文件)/Flutter/Generated.xcconfig 路徑下找到Generated.xcconfig 文件义钉,打開可以看到如下圖:
找到如下兩行,添加到xcode -> target -> build setting - User-Defined 中:
// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=/Users/admin/development/flutter
FLUTTER_APPLICATION_PATH=/Users/admin/Desktop/flutter項目/my_flutter
如圖: