创立

在项目的根目录运用终端指令创立, 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都要添加

参阅 github.com/flutter/flu…

装备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…