Android
Android多渠道打包较容易设置,以下是几个点
- 在android/app/build.gradle中productFlavors部分进行配置
- 在android/app/src下创建渠道文件夹放置渠道资源,目录结构需要与main文件夹中一致
ios
ios多渠道打包设置较为复杂,主要是在xcode中操作,可以参考以下两个网页
ios打包主要需要明确几个概念,Scheme就是flavor,Scheme需要与Build Config结合,所有参数设置都是在Build Config上
大致流程
- 创建新的Scheme
- 复制Build Config,根据新创建的Scheme重命名,必须用-进行连接,例如Debug-test
- 可选,重命名旧的Scheme,重命名旧的Build Config
- 把新创建的Scheme和新的Build Config关联
- 修改对应的Build Config的包名、app名字等信息
- 修改图标资源,修改对应的Build Config的图标引用
- 使用 flutter run --flavor scheme名字 进行测试
- 使用 flutter build ipa --flavor scheme名字 进行打包
获取当前运行在那个Flavor下
使用appFlavor常量即可获取当前运行在哪个Flavor下,null标识没有Flavor
官方实现 https://api.flutter-io.cn/flutter/services/appFlavor-constant.html