likes
comments
collection
share

Flutter Module接入iOS原生工程笔记

作者站长头像
站长
· 阅读数 7

创建

在项目的根目录使用终端命令创建, 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工程指令

Flutter Module接入iOS原生工程笔记

创建好后文件目录是这样的

配置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

    1. 复制一份info.plist文件,分别改成 info-Debug.plistinfo-Release.plist Flutter Module接入iOS原生工程笔记
    1. 配置Build-Setting中info.plist设置 Flutter Module接入iOS原生工程笔记
    1. 设置info-Debug.plist,增加下面两项
  1. NSBonjourServices  -- _dartobservatory._tcp
  2. NSLocalNetworkUsageDescription -- 用于Flutter调试 Flutter Module接入iOS原生工程笔记

如何热调试

  • AS 点击箭头指示的小图标(没有连接会显示蓝色的小图标,我这里是已经连上设备了) Flutter Module接入iOS原生工程笔记

  • 连上后AS的控制台就会显示已连接 Flutter Module接入iOS原生工程笔记

  • 断点调试 先打断点,再选择 Frames选项,就能启用断点了 Flutter Module接入iOS原生工程笔记

参考 flutter.cn/docs/develo…