本文着重介绍flutter与iOS混合开发,包括互相调用传值。
首先创建Flutter工程,命令行:flutter create -t module ***(工程名),注意,flutter工程名不能有大写。如果用Android Studio创建则选择module 创建。


接下来我们创建iOS工程,需要在flutter同一目录下,方便调用,

执行pod init,pod文件中加入如下内容:
flutter_application_path = '../flutter_module_demo/'
eval(File.read(File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')), binding)

创建完毕之后需要两步配置。
首先buildingsetting目录下搜索Bitcode,设置为NO,iOS本身默认编译是YES,为针对特定操作系统版本下载特定的包,这里需要设置一下

然后我们需要添加一个脚本,需要使iOS编译同时编译flutter,脚本内容:
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed
注意脚本所在位置,配置完有时候编译报错,没关系,退出xcode,重新打开编译OK。此时配置相关已完毕,接下来Flutter与iOS互相调用通讯。
网友评论