IOS老项目集成Flutter

IOS老项目集成Flutter

1、IOS项目关闭Bitcode

IOS老项目集成Flutter

2、创建flutter_module

a、切换分支(1、cd到flutter目录,2、flutter channel master,3、git pull)

b、创建flutter(1、cd到ios老项目外,让flutter与老项目同级,2、flutter create -t module flutter_module)

3、打开Xcode,创建Configuration Settings File文件,分别为:Flutter.xcconfig,Debug.xcconfig,Release.xcconfig三个配置文件。

a、设置Flutter.xcconfig:

#include "../../flutter项目名/.ios/Flutter/Generated.xcconfig"
ENABLE_BITCODE=NO

b、设置Debug.xcconfig:

#include "Flutter.xcconfig"
#include "Pods/Target Support Files/Pods-项目名/Pods-项目名.debug.xcconfig"

b、设置Debug.xcconfig:

#include "Flutter.xcconfig"
#include "Pods/Target Support Files/Pods-项目名/Pods-项目名.debug.xcconfig"
FLUTTER_BUILD_MODE=release

4、Xcode项目环境配置选择。

IOS老项目集成Flutter

5、添加脚本。

"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed

IOS老项目集成Flutter
IOS老项目集成Flutter

6、运行下项目,就会执行脚本

在下载的flutter SDK中(flutter/packages/flutter_tools/bin/xcode_backend.sh)找到xcode_backend文件并注释这段脚本
IOS老项目集成Flutter
运行下项目,就会执行脚本,iOS的工程文件下会有一个flutter文件夹。如果没有自动生成,那就自己创建一个,然后把flutter_module/.ios/fluter中的App.framework,engine拷贝到创建的那个文件夹中,再把整个flutter文件夹拉到xcode中。

7、配置Copy Files

IOS老项目集成Flutter
IOS老项目集成Flutter
两个添加完就大功告成了,可以开始你的flutter表演了

参考文献:
iOS老项目集成Flutter(iOS混编Flutter)
iOS项目中集成flutter