Common Google Play Errors
Troubleshooting Common Google Play Errors
Codemagic enables you to automatically publish your app to the internal, alpha, beta, production or custom tracks on Google Play. While publishing to Google play you may encounter errors if the application does not meet the release criteria. You can see the explanations of some of the common errors:
Code: 403, “The caller does not have permission”, “status”: “PERMISSION_DENIED”
This could be due to an invalid JSON file or permission issues with the service account. Please make sure you have done the following:
- Created a service account in the Google Play console
- Set the service account access to “Editor”
- Created a JSON private key
- Added the JSON key to Codemagic
- Navigated to your Google Play Console API access and granted access to the service account
- Given the service account access to your application
- Invited users to the service account
Checkout this guide for detailed explanation.
The current user has insufficient permissions to perform the requested operation. “status”: “PERMISSION_DENIED”
- This error may have caused due to Account permission issues. Try setting admin access for Account permissions on google play console.
- After granting access, Google may take 24-48 hours to propagate all access rights for all APIs or new users.
Google Play failed to upload artefacts. This Edit has been deleted.
- This error usually occurs when there are parallel builds running, as in 2 builds triggered at the same time.
- Solution is to use set
cancel_previous_builds: truein your triggers, but it doesn’t work when builds are triggered using API.
Cannot replace a bundle of version code X with an APK.
- This usually indicates that you have already published a .aab with version code ‘x’, and now you are trying to publish the .aab with the same version code.
- Try to upload .aab by incrementing the version code.
APK specifies a version code that has already been used
- Check version and version code. This error is possible when your version code is the same as the apk/aab already uploaded on google play.
Cannot update a published APK
- If an app has already been sent to a specific track, you cannot re-upload it. - You can change its track or increment the version code.
- This error is possible when your version or version code is the same as the apk/aab already uploaded on google play.
Your scoped storage permission declaration needs to be updated
- Google requires you to declare your storage permissions
- You will have to update your app accordingly to be able to publish to Google Play Store.
Package not found: com.xxxxx.app
- The error ‘Package not found’ means that an application with the package name from the artifact generated during the builds doesn’t exist in your Google Play account.
- This happens when either, you haven’t uploaded the first artifact to your Google Play application manually, or the generated artifact package name has some suffixes or changes and doesn’t correspond to the one in Google Play.
APK has not been signed with the upload certificate
- Check code signing. Use the same keystore while uploading your artifacts.
For uploading an AppBundle you must be enrolled in Play Signing
- As per the error, You need to upload your keystore to Play App Signing
- Enroll your app into app signing by Google Play to have Google sign the .aab that are generated from the app bundle during installation.
You uploaded an APK or Android App Bundle that was signed in debug mode
- You need to sign your APK or Android App Bundle in release mode instead of debug mode.
- Set your signing configuration in
build.gradlein release mode. Refer to this for more information.
APKs are not allowed for this application
- It is no longer possible to submit new apps to Google Play using the APK format. Instead, generate Android App Bundles(.aab). Check this out.
- You should use
./gradlew bundleReleaseto generate .aab file. And don’t forget to mention the artifact path
artifacts:section in your codemagic.yaml.
Only releases with status draft may be created on draft app
400error is related to the app being in draft status.
- The very first version of the app must be added to Google Play manually.
- In case you want to upload the artifacts generated in the build to Google Play as a draft release, select Submit release as draft in the workflow editor or
submit_as_draft: truein your yaml configuration.
- changesNotSentForReview means (from Google Play API docs): Indicates that the changes in this edit will not be reviewed until they are explicitly sent for review from the Google Play Console UI. These changes will be added to any other changes that are not yet sent for review.
- Beware, this parameter should not always be true.
- If an app/track is in a “rejected” state, then you need to submit the app with changesNotSentForReview: true, otherwise, you should send without specifying changesNotSentForReview(or setting it to false).
- Usually, If you are getting a 400 error related to the app being in draft status, either enable publishing to draft by setting the value of
submit_as_draftto true or promote the draft build up by a level to one of the testing tracks.
- Depending on your app’s update status, it may not be sent for review automatically.
- Also, it might be that the actual cause of the error is getting swallowed and is surfaced by changesNotSentForReview error. In that case, try to re-run it by adding
--stacktracethat will print out a full stack trace.
- Check this out.
Error 502 (Server Error)
5xxerrors are from the Google Play servers.
- The solution is to try again after some time.