如何在React Native Expo中修改iOS的BundleVersion?解决Azure DevOps发布报错
修改React Native Expo中iOS的BundleVersion解决版本重复错误
核心修改文件:app.json / app.config.js
在Expo托管式工作流(managed workflow)中,iOS的BundleVersion对应配置文件里的ios.buildNumber字段,应用版本号对应根级的version字段。
具体操作步骤
- 打开仓库根目录下的
app.json(或app.config.js) - 定位到
expo节点下的ios配置项,将buildNumber修改为比之前上传版本更高的数值(比如之前是1.0.0,可改为1.0.1或2,只要保证递增即可) - 若使用
app.config.js,在导出的配置对象中找到ios.buildNumber做同样修改
示例修改后的app.json片段:
{ "expo": { "name": "你的应用名称", "version": "1.0.0", "ios": { "bundleIdentifier": "com.yourcompany.yourapp", "buildNumber": "1.0.1" // 此处改为更高的构建版本号 } } }
关键注意事项
buildNumber必须是唯一且递增的,App Store不接受与TestFlight中已存在的构建版本号重复的提交,哪怕是同一应用版本下的不同构建- 如果你用的是裸工作流(bare workflow),除了修改配置文件,还需同步修改
ios/[你的应用名]/Info.plist里的CFBundleVersion字段,但你明确不用Xcode构建,所以托管式工作流的修改即可满足需求 - 修改完成后提交到Azure仓库,重新触发发布管道即可解决报错
你遇到的
ENTITY_ERROR.ATTRIBUTE.INVALID.DUPLICATE错误,本质就是上传的构建版本号与之前提交到TestFlight的版本重复,只要确保新的buildNumber高于历史版本就能解决。
内容的提问来源于stack exchange,提问作者Sujauddin Saiyed
相关产品推荐
相关产品推荐

