欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

iOS - Flutter混合开发

程序员文章站 2022-06-01 17:46:21
...

第一种 生成framework导入

1、创建flutter项目 (不包含完整的ios和安卓),生成的项目中,ios和安卓的项目为隐藏文件

  • 在终端输入命令行 。在生成的项目中进行flutter开发
    flutter create -t module flutter_moudle 

     

2、将flutter项目编译成framework,进入flutter项目中,输入以下代码,生成在flutter项目同一层级

  • flutter build ios-framework --output=../flutter_app

    这是生成的项目结构,Debug为测试版本,Release为发布版本,Profile是可以测试的高性能版本,App.framework是flutter项目的代码,Flutter.framework为flutter引擎iOS - Flutter混合开发

3、将生成的flutter_app拖入项目中,你可以只拖入其中的一个Debug或者其他,这里我全部拖进去了

  • 配置Xcode环境,如果你没有添加过pod,这里是空的,添加进去路径就行,iOS - Flutter混合开发
  • iOS - Flutter混合开发
  • 4、创建Frameworks文件夹,将Debug中的两个framework拖进去,配置Embed
  • iOS - Flutter混合开发iOS - Flutter混合开发

最后测试 ,在ios项目中,main.storyboard拖入一个按钮,点击方法

iOS - Flutter混合开发

  • 以后就是每次需要打包,合并
  • 弊端:
    • 就是每次合并都要打包 app包和flutter引擎包 ,但是一般引擎包不会改动

第二种 cocoapods

第一步不变,第二步生成framework终端代码更改为

flutter build ios-framework --cocoapods --output=../Flutter

iOS - Flutter混合开发

生成的文件拖进原生项目中,引入pod

flutter build ios-framework --cocoapods --output=../Flutter

iOS - Flutter混合开发

最后 pod install 安装下,至于App.framework还是按照之前的步骤拖入项目中,最后测试都和之前一样。

优点:不用每次都给flutter引擎包,剩下很多空间

 

 

相关标签: ios flutter