iOS
iOS相对比较简单,还记得我们之前添加Flutter环境的时候,在Xcode配置里面添加了下面一段Shell在Run Script中:
# Type a script or drag a script file from your workspace to insert its path.
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed
该Shell在我们Archive的时候,自动编译Flutter。所以iOS发布的时候,和我们之前一样,直接Archive后上传即可。
Android
Android发布时候的一些基本配置已经有说明(比如混淆),这里不做重复说明。这里只要说编译Flutter,可以按照下面步骤来发布:
- 进入Flutter Module文件中, 构建Flutter
# my_flutter是我项目的Flutter Module对应的文件夹,需要改成自己的
cd my_flutter
flutter build apk
- 执行第一步之后,和原来一样正常构建App即可
./gradlew app.XXXXX:assembleRelease
第一步也可以作为一个Task放在Gradle构建的时候触发,这样就可以iOS一样正常发布即可:
task gradleFlutterTask(type: Exec) {
workingDir '../'
commandLine 'sh', 'gradleFlutter.sh'
}
project.afterEvaluate {
// 我们项目执行gradlew的时候会添加强制构建正式App变量BUILDRELEASE,这里判断根据自己项目调整
if(hasProperty("BUILDRELEASE")){
gradleFlutterTask.execute()
}
}
网友评论