問題描述:
按照官方文檔將Flutter model集成到iOS 原生項目后(使用官方推薦的cocoaPod集成方案),運行APP后flutter入口頁面顯示未白屏荡含,控制臺打印如下錯誤信息:
Failed to find assets path for "Frameworks/App.framework/flutter_assets"
[VERBOSE-2:engine.cc(197)] Engine run configuration was invalid.
[VERBOSE-2:shell.cc(580)] Could not launch engine with configuration.
注:
關(guān)于如何將Flutter model 集成到iOS 原生APP中竖般,可以參見官方文檔甚垦,按照文檔描述操作即可;
集成文檔:
翻譯稿:
https://flutter.cn/docs/development/add-to-app/ios/project-setup
官方原稿:
https://docs.flutter.dev/development/add-to-app/ios/project-setup
解決方案:
1涣雕、添加腳本
target->Build Phases->+->New Run Script Phase->Run Script
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed ${SOURCE_ROOT}/Flutter/App.framework
如下圖所示:
注意??:
$FLUTTER_ROOT 是當前Flutter環(huán)境的跟路徑艰亮,例如在我的電腦上,路徑為:
/Users/zhangyin/macTools/flutter_2.10.5
您需要檢查 $FLUTTER_ROOT 是否已經(jīng)正確設(shè)置過挣郭;
target->Build Settings(若沒有搜索到FLUTTER_ROOT)->+->Add User-Defined Setting
重新運行APP
首先在Xcode中clean build folder
然后在APP的項目文件夾下執(zhí)行命令:pod install
然后重新啟動項目就可以看到Flutter中的頁面了迄埃,運行效果如下:
(底層是原生APP,彈窗來自Flutter的main頁面)
鳴謝:
本文參考簡友[NJ_墨]的文章編寫兑障,實測有效侄非;
http://www.reibang.com/p/c36b1873a043