打包成FrameWork
cd 到flutter工程根目录
flutter build ios-framework --output=../flutter_app
Debug 开发环境,可以运行在模拟器
Profile 高性能开发环境,可以调试。不能运行在模拟器
Release 生产环境,不可以调试,不能运行在模拟器
xcode配置
build settings -> framework search Paths 写入需要导入的Flutter Framework包路径
创建虚拟文件夹 导入Flutter包
General -> Frameworks,Libariesn,and Embedded Content 里面导入的APP.framework & Flutter.framework Embed选项设置为Embed & sign
App.framework 储存编写Flutter 的代码
Flutter.framework 渲染引擎
cocoapod 导入
cd 到flutter工程根目录
flutter build ios-framework --cocoapods --output=../flutter_cocoapods
Debug 开发环境,可以运行在模拟器
Profile 高性能开发环境,可以调试。不能运行在模拟器
Release 生产环境,不可以调试,不能运行在模拟器
比打包成framework 少了Flutter.framework 多了Flutter.podspec
xcode 配置 - cocoapods
pod 'Flutter', :podspec => 'Flutter/Debug/Flutter.podspec'
pod install 之后项目就会导入Flutter.framework包
App.framework 配置还是入上一步一样 需要导入到项目中
自动化 利用CI脚本持续集成
CI做的事情:代码放上去后 生成编译后的产物。别人拉取的都是编译后的东西。节省编译时间
上传项目到github里面,在Actions里面添加行为。目标是上传代码后自动编译成framework包
CI脚本
name: CI #CI名称
on: [push] #触发条件push操作!
jobs:
check:
name: Test on ${{ matrix.os }}
#运行在哪个平台这里是MacOS平台
runs-on: macos-latest
steps:
#固定写法
- uses: actions/checkout@v1
#三方flutter的Action,它可以在服务器配置一个Flutter环境
- uses: subosito/flutter-action@v1
with:
flutter-version: '1.20.3'
channel: 'stable'
#想让我们CI做的事情!
- run: cd flutter_module && flutter build ios-framework --cocoapods --output=../framework
- run: |
git add .
git commit -m 'update flutter framework'
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
网友评论