Expo提交EAS构建到Google Play报错:此应用不允许上传APK如何解决?
解决方案
1. 关于skip_upload_apk参数的修改
你可以将该参数设置为true,这个操作可以直接解决当前的报错。
原因是你的Google Play应用后台已经开启了仅接受AAB格式安装包的限制,你之前手动上传时也已经验证过APK会被拒绝。而EAS提交的默认配置会同时尝试上传APK和AAB文件,哪怕你已经指定构建类型为AAB,只要skip_upload_apk为false,触发Google Play的校验规则就会返回对应错误。
修改该参数有两种可选方式:
- 单次提交临时生效:执行提交命令时附加参数,命令如下:
eas submit -p android --skip-upload-apk - 永久配置生效:修改
eas.json的submit配置块,修改后的配置参考如下:{ "cli": { "version": ">= 0.37.0" }, "build": { "development": { "releaseChannel": "default", "developmentClient": true, "distribution": "internal", "android": { "buildType": "app-bundle" }, "env": { // 你的原有环境配置 } }, "preview": { "distribution": "internal" }, "production": {} }, "submit": { "production": { "android": { "skipUploadApk": true } } } }
2. EAS无法找到构建记录的问题说明
你遇到的Couldn't find any Android builds for this project on EAS servers报错,是因为你使用的development构建profile的distribution字段设为了internal,这类仅用于内部分发的构建产物默认不会出现在提交操作的可选构建列表中,你手动传入build ID的操作是可行的。
如果需要让构建出现在可选列表中,你可以将对应构建profile的distribution字段修改为store即可。
额外注意事项
提交到Google Play的安装包不要开启developmentClient配置,该配置是为本地调试生成的开发客户端,包含大量调试代码,不符合应用商店的提交要求,建议你单独创建专门用于商店提交的构建profile。
内容的提问来源于stack exchange,提问作者Dynameyes
相关产品推荐
相关产品推荐

