使用证书文件通过EAS构建iOS应用并提交App Store遇问题求助
React Native Expo iOS构建与App Store提交流程问题解决
问题场景
我开发的React Native Expo项目已成功上架Google Play Store,但提交App Store时遇到问题。客户未提供Apple ID权限,仅提供了provisioningProfile文件、distributionCertificate文件及证书密码,同时我拥有该Apple账号的App Store Connect管理员权限。配置eas.json后执行eas build --platform ios报错,求正确的iOS构建及提交流程。
我的eas.json配置:
{ "build": { "ios": { "distributionCertificate": { "path": "iosdata/ios_distribution.p12", "password": "password" }, "provisioningProfile": { "path": "iosdata/combengalcreativemediarhgdict.mobileprovision" }, "distribution": "store" } } }
正确流程与配置修正
一、前置验证
- 确认
iosdata目录在项目根目录下,证书、描述文件路径无拼写错误 - 测试.p12证书密码:导入本地钥匙串,输入密码验证是否有效
- 核对provisioningProfile:确认文件对应Bundle ID与项目一致,且为App Store分发类型
二、完善eas.json配置
当前配置缺少环境标识与路径规范,修正后如下:
{ "build": { "production": { "ios": { "distribution": "store", "distributionCertificate": { "path": "./iosdata/ios_distribution.p12", "password": "your-cert-password" }, "provisioningProfile": { "path": "./iosdata/combengalcreativemediarhgdict.mobileprovision" }, "resourceClass": "m-medium", "autoIncrement": true } } } }
- 新增
production构建环境,明确构建目标 - 路径前添加
./确保相对路径解析正确 resourceClass指定中等规格构建资源,避免资源不足导致失败autoIncrement自动递增版本号,适配App Store版本要求
三、执行构建
- 登录EAS账号:
eas login - 指定构建环境执行命令:
eas build --platform ios --profile production - 构建过程中确认使用本地提供的证书与描述文件
四、App Store提交
- 构建完成后,EAS会自动将产物上传至App Store Connect(需确保账号有提交权限)
- 登录App Store Connect,进入对应应用的TestFlight板块,确认构建包已上传
- 完成测试后,进入App Store板块补充应用信息、截图,提交审核
常见错误排查
- 路径错误:临时改用绝对路径测试,确认文件存在
- 证书不匹配:检查.p12证书与provisioningProfile是否属于同一Apple开发者账号,且Bundle ID一致
- 权限问题:确认App Store Connect账号拥有「管理」或「提交应用」权限,可联系客户核实
内容的提问来源于stack exchange,提问作者Joshio Banarjee
相关产品推荐
相关产品推荐

