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

iOS项目中混编flutter和打包发布

程序员文章站 2022-04-19 11:22:54
如果已有iOS项目,并且想在项目中添加flutter,可以按照以下方法处理。1首先iOS项目同级目录下创建一个flutter_module,这个同级目录不是在iOS项目的文件里面,flutter create -t module flutter_moduleAPPSS是我的以前的iOS项目文件,然后再同级目录下创建flutter_m在podfile文件添加flutter_application_path = '../flutter_m'load File.join(flutter_appli...

如果已有iOS项目,并且想在项目中添加flutter,可以按照以下方法处理。
1首先iOS项目同级目录下创建一个flutter_module,这个同级目录不是在iOS项目的文件里面,

flutter create -t module flutter_module

iOS项目中混编flutter和打包发布
APPSS是我的以前的iOS项目文件,然后再同级目录下创建flutter_m
在podfile文件添加

flutter_application_path = '../flutter_m'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')

install_all_flutter_pods(flutter_application_path)

最后代码是这样

platform :ios, '11.0'

flutter_application_path = '../flutter_m'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')
target 'APPss' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!
  install_all_flutter_pods(flutter_application_path)
end

然后cd 到APPss文件,pod install

然后去build setting 把bitcode置为NO

这样我们就可以和flutter交互了,可以把flutter的页面添加的APP中

-(void) actionForButton{
    FlutterViewController *vc = [[FlutterViewController alloc] init];
    [self presentViewController:vc animated:YES completion:^{}];
}

比如点击按钮弹出flutter的页面

打包发布
首先需要将app.framework 和 flutter.framework 重新编译成 release模式,现在是debug模式
在路径可以找到flutter_m->.ios->Flutter->App.framework
在路径可以找到flutter_m->.ios->Flutter->engine->Flutter.framework

接下来cd到flutter_m文件下

flutter build ios –release --no-codesign

有的终端会报错,就把–release去掉试试;
成功之后替换掉debug的framework就可以打包了

本文地址:https://blog.csdn.net/sinat_34245894/article/details/112571914

相关标签: flutter ios