likes
comments
collection
share

iOS集成 Flutter 混合工程开发一

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

###混合开发集成两种方式:

1、官网方式 github.com/flutter/flu…
2、抽取Flutter,第三方库的方式

#####本文主要介绍第二种方式,如下:

借鉴咸鱼《Flutter混合工程改造实践》的实践,抽取Flutter依赖到远程的一些实现细节。 本文先介绍如何混合开发 Native工程对Flutter 工程的依赖主要如下: 1、Flutter.framework (库和引擎) 2、App.framework(lib下的dart文件) 3、自己实现的Flutter Plugin(我目前没做插件开发,先忽略) 4、Flutter工程产物:isolate_snapshot_data、isolate_snapshot_instr、vm_snapshot_data、vm_snapshot_instr、flutter_assets

以iOS 为例集成老项目中:首先执行flutter build ios --release 1、在Native创建Flutter文件夹,在你的Flutter项目找到以下路径文件 XXX/ios/Flutter 如图:

iOS集成 Flutter 混合工程开发一 2、复制以上所有文件,粘贴到Native创建的Flutter文件夹下 3、在Xcode中,通过 Add File to "Flutter" 方式,将文件引用到目录。注意: iOS集成 Flutter 混合工程开发一 4、添加打包资源

  • Build Phases->Copy Bundle Resources下添加flutter_assets,这个目录保护所有的flutter脚本和资源
  • Build Phases下点”+”创建一个New Copy Files Phase,Destination选择Frameworks, name下添加app.framework和flutter.framework, 这步不成功提示找不到flutter image

问题1:无法模拟器上运行的问题 答:将kernel_blob.bin放入flutter_assets下。kernel_blob.bin位置如下:XXX/ios/Runner.xcworkspace ,用Xcode打开Runner.xcworkspace,在打开项目的flutter_assets下。 (目前没有找到好的方法,欢迎提供)

问题2:不成功提示 flutter image 答:上边第4步。 问题3:Bitcode 答: 关闭Bitcode, build Settings->enable Bitcode Yes改为no

####参考文献及出处 blog.csdn.net/langouster/… blog.csdn.net/u010960265/… yq.aliyun.com/articles/61…