本地构建Flutter代码需要部署编译环境非常麻烦,所以这里我推荐通过codemagic.io网站在线自动编译构建Flutter工程源码。
(1)codemagic.io介绍
Codmagic.io 是一个专为移动应用开发者设计的 持续集成和持续交付(CI/CD)平台,主要聚焦于 Flutter、iOS、Android 和 React Native 应用的自动化构建、测试和发布流程。它提供云端构建环境,简化开发团队的应用交付流程,尤其适合需要频繁更新或跨平台开发的团队。
官网链接:
核心功能:
- 自动化构建与测试
- 支持 Flutter、iOS(Xcode)、Android(Gradle) 和 React Native 项目。
- 自动触发构建(通过 Git 提交、定时任务或手动触发)。
- 并行测试,生成测试报告和日志。
- 跨平台支持
- 为 iOS 和 Android 应用提供独立的构建环境(包括 macOS 和 Linux 虚拟机)。
- 支持构建多平台产物(如 IPA、APK、App Bundle 等)。
- 无缝发布
- 直接发布到 App Store Connect、Google Play、Firebase App Distribution 等平台。
- 支持上传到 TestFlight、Beta 测试渠道。
- 开发者友好
- 可视化配置:通过 YAML 文件或网页界面管理流程。
- 环境变量管理:安全存储敏感信息(如签名证书、API 密钥)。
- 插件与集成:与 Slack、GitHub、Bitbucket、GitLab 等工具联动。
- 性能优化
- 高速缓存依赖项(如 Flutter SDK、CocoaPods),减少构建时间。
- 提供详细的构建日志和性能分析。
适用场景:
- Flutter 开发者:Codemagic 是官方推荐的 CI/CD 工具之一,深度优化 Flutter 工作流。
- 小型团队或独立开发者:无需自建 Jenkins 或 GitHub Actions 复杂配置,开箱即用。
- 企业级发布:支持代码签名、多环境部署和合规检查。
定价:
- 免费层:适合个人开发者,每月有限额构建时间。
- 付费计划:按构建时长或并发任务计费,支持团队协作功能。
(2)如何在线自动编译
通过 Codemagic.io 在线编译 Flutter 代码非常简单,以下是详细步骤指南:
1. 准备工作
- 确保项目在 Git 仓库中(GitHub、GitLab、Bitbucket 等)。
- 准备好 代码签名文件(如需发布到 App Store/Google Play):
- iOS:
Apple Developer 账号
+.p12 证书
+Provisioning Profile
。 - Android:
keystore 文件
(签名 APK/App Bundle 用)。
- iOS:
2. 登录并设置 Codemagic
- 注册/登录
- 访问 Codemagic.io,用 GitHub/GitLab/Bitbucket 账号登录。
- 添加项目
- 点击 “Add application”,选择你的 Flutter 项目仓库。
3. 配置构建流程
方式一:自动生成配置(推荐新手)
- 进入项目页面,点击 “Start your first build”。
- 选择 Flutter 作为项目类型,Codemagic 会自动检测项目结构。
- 根据提示配置:
- 分支(如
main
、dev
)。 - 构建类型(Debug/Release)。
- 目标平台(iOS、Android 或两者)。
- 分支(如
方式二:手动编写 codemagic.yaml
(灵活控制)
- 在项目根目录创建
codemagic.yaml
文件(或通过 Codemagic 网页编辑器生成)。 - 示例配置(Android + iOS):
workflows:
flutter-android:
name: Flutter Android Build
environment:
groups:
- keystore_credentials # 存储签名密钥的环境变量组
scripts:
- flutter pub get
- flutter build appbundle # 或 `flutter build apk`
artifacts:
- build/app/outputs/bundle/release/*.aab
publishing:
email:
recipients:
- your-email@example.com
flutter-ios:
name: Flutter iOS Build
environment:
groups:
- ios_credentials # 存储 iOS 证书的环境变量组
scripts:
- flutter pub get
- flutter build ipa # 生成 IPA 文件
artifacts:
- build/ios/ipa/*.ipa
4. 设置代码签名
Android 签名
- 在 Codemagic 项目设置中,进入 “Environment variables”。
- 添加以下变量(值来自你的
keystore
文件):
CM_KEYSTORE_PATH (上传 keystore 文件)
CM_KEYSTORE_PASSWORD
CM_KEY_ALIAS
CM_KEY_PASSWORD
- 在
codemagic.yaml
中引用这些变量。
iOS 签名
- 在 Codemagic 上传
.p12
证书和.mobileprovision
文件。 - 通过 “Code Signing” 选项卡配置:
- 选择证书类型(Development/Distribution)。
- 填写 Bundle Identifier。
5. 触发构建
- 手动触发:在 Codemagic 控制台点击 “Start new build”。
- 自动触发:通过 Git 提交(在设置中配置触发规则,如
push
到特定分支)。
6. 查看结果与发布
- 构建日志:实时查看编译进度和错误。
- 下载产物:构建成功后,在 “Artifacts” 中下载 APK/IPA/AAB 文件。
- 自动发布(可选):
- Android:发布到 Google Play(需配置 API 密钥)。
- iOS:上传到 App Store Connect(需 App Store 开发者账号)。
常见问题
- 依赖安装失败
- 确保
pubspec.yaml
中依赖项无误,可在scripts
中添加flutter pub upgrade
。
- 确保
- iOS 构建错误
- 检查证书和 Profile 是否匹配 Bundle ID。
- 构建超时
- 免费计划有 30 分钟限制,复杂项目可升级付费计划。
优势总结
- 无需本地环境:全部在云端完成,节省配置时间。
- 高度自动化:从代码提交到发布一键完成。
- 跨平台支持:同时生成 iOS 和 Android 应用。
本站大部分资源收集于网络以及网友投稿,本不保证资源的完整性以及安全性,请下载后自行测试。
本站资源仅供下载者学习技术,版权归资源原作者所有,请在下载后24小时之内自觉删除。
本站资源仅供下载者学习IT编程开发技术,请遵守国家法律法规,严禁用于非法用途。
若作商业用途,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
如您是版权方,本站源码有侵犯到您的权益,请邮件联系331752841@qq.com 删除,我们将及时处理!
本站资源仅供下载者学习技术,版权归资源原作者所有,请在下载后24小时之内自觉删除。
本站资源仅供下载者学习IT编程开发技术,请遵守国家法律法规,严禁用于非法用途。
若作商业用途,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
如您是版权方,本站源码有侵犯到您的权益,请邮件联系331752841@qq.com 删除,我们将及时处理!