Flutter Module接入iOS原生工程笔记
创建
在项目的根目录使用终端命令创建, xxx是module的名称
flutter create -i objc -a kotlin -t module xxx
当然 还有 swift、java、objc、kotlin 自己选择。如果不加默认是swift和kotlin;
扩展:flutter create -i swift -a kotlin flutter_example
这个是快捷创建Flutter工程指令
创建好后文件目录是这样的
配置podfile文件
flutter_application_path = '../test_flutter_module'
load File.join(flutter_application_path,'.iOS','Flutter','podhelper.rb')
target 'MainProject' do
install_all_flutter_pods(flutter_application_path)
end
完成后执行 pod install
运行一次
如果这时候LLDB报错Library not loaded: @rpath/App.framework/App
那就去Pods-**-frameworks.sh
中添加install_framework "${PODS_ROOT}/../../../../Flutter/flutter/.ios/Flutter/App.framework"
。注意debug和release都要添加
配置info.plist
-
- 复制一份info.plist文件,分别改成
info-Debug.plist
和info-Release.plist
- 复制一份info.plist文件,分别改成
-
- 配置Build-Setting中info.plist设置
- 配置Build-Setting中info.plist设置
-
- 设置
info-Debug.plist
,增加下面两项
- 设置
NSBonjourServices -- _dartobservatory._tcp
NSLocalNetworkUsageDescription -- 用于Flutter调试
如何热调试
-
AS 点击箭头指示的小图标(没有连接会显示蓝色的小图标,我这里是已经连上设备了)
-
连上后AS的控制台就会显示已连接
-
断点调试 先打断点,再选择 Frames选项,就能启用断点了
转载自:https://juejin.cn/post/7073378554204913695