React Native和Flutter如何接入Mobile App Automizer跨平台项目发布自动化实战指南【免费下载链接】mobile-app-automizerYou can automize iOS and Android apps build, upload and versioning processes via Mobile App Automizer CLI tool.项目地址: https://gitcode.com/gh_mirrors/mo/mobile-app-automizerMobile App Automizer是一个开源的移动端发布自动化工具只需一行 CLI 命令就能自动完成 iOS 和 Android 应用的构建Build、上传Upload与版本号管理Versioning。它原生支持 Native iOS/Android、React Native和Flutter项目可以把你的应用一键发布到Apple App StoreTestFlight、Google Play Store或你自己的CDN彻底告别每次发版时的手动点鼠标和改版本号。 Mobile App Automizer 能做什么传统发版流程里开发者要手动执行 archive、导出 ipa、上传商店、修改 iOS 的CFBundleVersion和 Android 的versionCode……繁琐且容易出错。Mobile App Automizer 把这一切封装成一个配置文件加一条命令✅自动构建iOS 走xcodebuildAndroid 走gradlew源码见 src/ios.js、src/android.js✅自动上传App Store / TestFlight、Google Play、自建 CDN 三种渠道任选✅自动版本管理遵循语义化版本patch / minor / major同时更新 iOS 和 Android 的版本号源码见 src/version.js✅环境隔离production 与 stage预发布环境一键切换支持 Firebase 配置文件自动替换整个发布流程的调度逻辑非常精简集中在 src/automizer.js更新版本号 → 构建 iOS → 构建 Android → 上传 iOS → 上传 Android 安装教程三步完成环境配置第一步确保本机已安装 Node.js。第二步全局安装工具npm install -g mobile-app-automizer如果偏好源码方式也可以从https://gitcode.com/gh_mirrors/mo/mobile-app-automizer克隆仓库后本地安装。第三步进入你的移动端项目目录React Native 或 Flutter 仓库根目录运行安装向导mobile-app-automizer --install安装向导是交互式问答实现见 src/installer.js它会依次询问是否构建 iOS 应用生产/预发布 Scheme 分别是什么是否使用 Firebase是否上传 iOS 应用选择 App Store 还是 CDN填写 Apple 账号、Team ID、Bundle ID 等是否构建 Android 应用上传到 Google Play 还是 CDN是否启用版本号自动管理完成后仓库根目录会生成一个配置文件.ma-automizer.js模板见 templates/config.js。它的默认值是基于常见工程结构设计的iOS 默认指向ios/目录含 workspace、archive、ipa 导出路径Android 默认指向android/目录含app/build.gradle和 apk 输出路径重要请把这个配置文件提交到代码仓库团队成员就能共享同一套发布配置。之后可随时手动修改。⚛️ React Native 项目接入指南React Native 项目开箱即用因为工具默认路径与 RN 标准目录结构完全吻合配置项React Native 默认值iOS 根目录ios/Android 根目录android/Gradle 文件android/app/build.gradle需要确认的三点Scheme 名称RN 项目在ios/下的 workspace 通常以应用名命名如MyApp.xcworkspace向导里填写的 Scheme 要与 Xcode 中一致Android 变体工具会执行./gradlew assembleRelease生产或assembleStaging预发布。如果你的 RN 项目使用 flavor如staging确认android/app/build.gradle中配置了对应 variantFirebase可选仅 iOS如果项目用到 Firebase把GoogleService-Info.plist、GoogleService-Info-production.plist、GoogleService-Info-stage.plist三个文件放到ios/firebase/目录工具会在每次构建前根据所选环境自动替换生效文件配置确认后React Native 项目的 App Store 上传、Play 商店上传即可全部自动化。 Flutter 项目接入指南Flutter 同样原生支持android/与ios/目录结构与 RN 一致接入时注意以下差异iOS 侧Flutter 项目的 workspace 通常位于ios/Flutter.xcworkspace在.ma-automizer.js中把workspace改为实际路径Scheme 一般就是你的应用名可在 Xcode 中查看生产与预发布可使用同一 Scheme 或分别配置导出签名使用自动生成的ios/exportOptions.plist模板见 templates/exportOptions.js配置了 Team ID 后无需手动处理证书选择Android 侧工具执行./gradlew clean ./gradlew assembleRelease构建 apk构建产物路径在.ma-automizer.js的android.path.apk中配置需与 Flutter 项目的实际输出路径对齐上传 Google Play 需要借助 Gradle Play Publisher 插件./gradlew publishReleaseApk在android/app/build.gradle中配置好即可版本号侧工具通过读取仓库根目录package.json的version字段作为统一版本源iOS 用agvtool同步 marketing version 和 build numberAndroid 自动改写build.gradle里的versionName并把versionCode1实现见 src/version.js所以仓库根目录需要有package.jsonFlutter 项目可以新增一个只用于版本号的简单package.json⚡ 一行命令发布日常实战命令清单配置完成后发版就只剩一条命令mobile-app-automizer这条命令默认以production 环境 patch 版本号执行完整流程版本号递增 → 双端构建 → 双端上传。命令用途mobile-app-automizer生产环境发布自动递增 patch 版本mobile-app-automizer --stage预发布环境构建上传跳过版本管理mobile-app-automizer --minor次版本号升级如 1.2.3 → 1.3.0mobile-app-automizer --major主版本号升级如 1.2.3 → 2.0.0mobile-app-automizer --verbose打印底层执行的每条命令便于排查问题mobile-app-automizer --clean清理构建缓存可加--ios或--android指定平台--stage非常适合 CI 中的夜间构建或测试包分发构建产物上传后不会污染正式版本号。 上传渠道怎么选Apple App Store / TestFlight在 Apple ID 后台创建一个应用专用密码app-specific password填入配置工具通过xcrun altool完成 ipa 上传提交到 TestFlight 审核Google Play Store在 Android Gradle 中集成 Play Publisher 插件工具自动执行./gradlew publishReleaseApk提交到 Play Console自建 CDN适合企业内部分发或快速灰度在.ma-automizer.js的cdn段落实现uploadIpa/uploadApk/uploadManifest三个上传函数即可iOS 侧工具会自动生成manifest.plist外置安装清单模板见 templates/manifest.js并输出itms-services://下载链接扫码即装 常见问题与新手提示Q1命令执行失败了不知道卡在哪一步加--verbose重跑可以看到工具在后台执行的原始命令参数解析与命令执行见 utils/utils.js。Q2iOS 构建报 scheme 找不到用 Xcode 打开ios/目录下的 workspace核对 Scheme 名称大小写与.ma-automizer.js中保持一致。Q3Flutter 项目为什么没有自动更新版本号检查仓库根目录是否存在package.json且配置中ios.version/android.version为true。Q4配置错了想重新配置删除.ma-automizer.js后重新执行mobile-app-automizer --install即可或直接手动编辑该文件它只是一个普通的 JS 模块。Q5构建缓存异常导致产物不对先执行mobile-app-automizer --clean清理双端缓存再重新发布。✅ 总结Mobile App Automizer 把 React Native 和 Flutter 项目中最琐碎的发版环节——构建、上传、版本号管理——收敛为一个配置文件 一条命令。接入成本极低npm全局安装、--install交互式配置、提交配置文件之后每次发版只需敲下mobile-app-automizer。对于追求发版效率的跨平台团队来说这是值得立刻上手的免费开源自动化方案。更多用法细节可参考仓库说明文档 README.md。【免费下载链接】mobile-app-automizerYou can automize iOS and Android apps build, upload and versioning processes via Mobile App Automizer CLI tool.项目地址: https://gitcode.com/gh_mirrors/mo/mobile-app-automizer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考