I'm trying to publish a new version of my Android app to Google Play and get the following error?
This configuration cannot be published for the following reason(s): Version 1 is not served to any device configuration: all devices that might receive version 1 would receive version 4
I don't understand it. What does it mean?
https://i.stack.imgur.com/1Ma2n.png
This happened to me when I published two APKs (versions 3 and then 4) in a short space of time. Clicking "Deactivate" on the dropdown next to version 3 appeared to fix it.
My guess is that this is a very-poorly-worded error message meaning something like "your original APK hasn't been published to all the update servers yet, so some of them may miss that version entirely". But it's a bit of a guess.
For some reason when you upload a new APK without immediately clicking "publish" (you probably clicked save draft the first time), Google thinks you want to publish BOTH apk at the same time.
This is usually needed when you have multiple APK for different configuration (say: a version for android 2.x and another for 3+ or a version for tablet and another for handset etc...)
However in your case you are just uploading an upgrade and you want it to replace your previous APK.
To solve:
Click on the Switch to Advanced Mode on the top right Click on Action -> Move on the OLD APK and choose "Deactivate" The error should go away and you should see your OLD apk in "OTHER APKS" and the new one ready to be published. Just click Publish to make your change effective and wait for them to propagate.
The Google warning is missleading. Hope this clarify it.
I have solved the same problem with my app. I must upload from version 1.0 to the version 2.0. - I have uploaded the v2.0 in Beta. - When it was uploaded, I have DEACTIVATED the v1.0 in the PROD. - Next step was to MOVE the v2.0 to PROD from the BETA. - Then, the PUBLISH button was activated to finish the process. I hope it helps.!
The solution of @Chris is right. But what the message really means is:
version1 and version4 has the same configuration: same API level, same screen resolution... bascially everything in manifest... So this means any device can install version can install version4, too. Now everything is clear: since version4 has higher versionCode, every devices will recieve the version4 instead version1.
There's no meaning still put version1 "in production" anymore. Under no circumstance any device would recieve this version. So you should "deactivate" it.
This may be a hack, but you can workaround this by doing staged rollout to 1-50%, then increase it to 100%.
This case the error message does not prevent publishing your app and also you don't have to deactivate anything.
This is purely a guess but do you have a previous version uploaded? If so it might be that it's marketcode
is set to something higher than your new build e.g. 4
I had a similar problem, but because my previous version had a lower maximum andorid api, I was not allowed to revert to previous version.
In the end for me it was a problem wit eclipse that was not saving the change to the manifext file. I restarted eclipse, saved my project, made an apk and then it worked. Maybe worth a try if the above answers fail.
I just switched to the basic view. Which automatically replaces the current version with the new version immediately. That is of corse not suitable for every app deployment scenario. But should be all right in most (simple) cases.
You can only have one APK in production at a time. Before uploading you must deactivate the current one. The same goes for alpha and beta test APKs combined - you can only have one APK published for testing.
I agree the wording of the error message is appalling!
I had the same issue, but I executed following command on my APK file
jarsigner -verify -verbose -certs Myapp.apk
then I uploaded the new APK on the play store and it published easily.
jarsigner -verify
is a read-only command; it does not change the existing APK so this will not do anything.
I guess the console is telling your that u have two versions supporting the same devices so there is no reason to be using both
solution: remove the older one... OR if ur older version supports specific devices, mark that and the console will accept it
I also received that problem when I uploaded the APK at the first time but I noticed that API level 18-17 when viewing APK details. Therefore, I added this code to AndroidManifest.xml to specify the maximum API level
<uses-sdk android:minSdkVersion="18"
android:targetSdkVersion="23"
android:maxSdkVersion="23" />
After doing this, the problem is solved :)
in my case an older version of apk was published in beta testing. while i was trying to update my app over already published app with new apk.
just moved my new apk to beta testing and unpublished the old apk from beta testing.
and then finally moved the new apk from beta to prod.
I had the same problem i just DEACTIVATE the old apk which was currently active and then upload new apk. IT SOLVED my Problem
To resolve the issue, do the following:
delete the new apk that is in the draft mode clear the history cach of the browser or use other browser and re-upload the apk
I had the same issue, but I resolved by Block Lint Errors.
See the Lint Error page, right corner packager icon, click there and block package. When you click for leaving lint error, the application make export singed application package.
https://i.stack.imgur.com/jFubN.png
it happened to me, when I published new APK, but accidentally closed browser window without finishing submission.
Success story sharing
Deactivate
on previous version apk won't enableMove to Production
in newer version. Seems like older version sayingin Prod will be unpublished
. So should i wait till it get unpublished from all Google Play Servers?