I have already published many versions of my App in Playstore.
But user can still download an older version of APK.
You can see currently I have 5 versions of APK in PlayStore.
Version 9, 16, 18, 19 and 45
I have Samsung(Android 4.4.4), MotoG4 (Android 7.0), Lenovo Tab (version 6.0), Moto G (Android 5.1.1), Android Screen (Android 5.1) and many other devices.
When I download App from PlayStore I will get 45 version of APK expect Android Screen (Android 5.1).
In Android Screen (Android 5.1), I will get 19 version of APK.
Don't know what is the issue.
Version 9 or 19 is too older i.e 1.5 years older.
So How can I unpublish old versions of APK?
Create a new release as described on this help page
Any APKs you don't want active, then deactivate them
publish your release
Here is the answer for unpublish you are not able to unpublish particular version of the application:
Please note that you unpublish (and this means just what name says, nothing more) not just APK - you hide all related stuff (app's page in Google Play etc). To end user it looks like the app is gone. For you - it is still in your console, you can edit description, images, see comments, stats or update APKs etc., but unless you publish it again, nobody will see these changes.
Related
In August 1, Google Play requires new apps to target at least Android 8.0 (API level 26). But in appgyver, I notice the latest available version is 4.5.3. Is there any way to upgrade it? Thanks!
I having the same issue, which is the maximum API level which appgyver supports is 21 only. GooglePlay required at least API Level 26 on August 2018 onward.
AppGyver just officially answered this question here.
TL;TR AppGyver is using Crosswalk, an Intel product, to build Android apps, and Intel has shut down Crosswalk over a year ago, now it is not possible for AppGyver to update their Build Service without rewriting the entier Android part, which would cost them too much, Supersonic and Steroids being depreciated, Android is officially abandonned by AppGyver, the Build Service will stay as is for apps that are internally distributed but won't allow to build apps destinated for Play Store.
Edit: I found a solution that allow me to get the app accepted on the Play Store, but app will crash on Android 8.
I then tested to install my app from the Play Store on a Android 6 with success but as we could expect it crashes on Android 8, the edited Target SDK number dupes the Play Store so it lets the APK in, but in the end it hasn't been built with Android 8 capabilities, so it won't work on that version.
All I had to do was to import my APK in APK Icon Editor, go in the Properties tab, change the Target SDK value to 26 (be sure to keep a lower value in the Minimum SDK field as it's the one telling what Android version can actually instal your app, if it's high then older phones won't have access to your app), and click on Pack APK to generate a new signed APK that is accepted by the Play Store!
Its as easy as this:
I then tested to install my app from the Play Store on a Android 6 with success but as we could expect it crashes on Android 8, the edited Target SDK number dupes the Play Store so it lets the APK in, but in the end it hasn't been built with Android 8 capabilities, so it won't work on that version.
Edit: it seems like it also crashes on Android 7 :(
Appgyver is constantly working on their platform and bringing latest updates. hopefully soon this issue will be resolved as well.. try contacting their support
I'm working on an app which is in Beta (no released version in production yet).
I've uploaded a new APK yesterday. When doing that I got a warning as I changed the minSdkVersion from 16 to 19. I made this change on purpose so it was expected.
On the Google Play Console, it now shows that a new APK has been added and the old one has be deactivated, which is what I want.
However, the Play Store now display 'Varies with device' under the 'Requires Android' section of the app information.
So it seems the Store has kept the old version for the people having Android between API 16 and 19, like if I wanted Multiple APK.
How to solve this issue?
EDIT
I've released a new Alpha version to get rid of the old one which was still there and 'shadowed' by the Beta (this Alpha supported Android from API 16), and then promoted it to Beta. So now I have no Alpha, still no app in production, and only one Beta APK with minSdkVersion set to 19.
This Beta is now displayed on the Store page, however both 'Requires Android' and Current version still display 'Varies with device'.
After contacting Google support, here is their answer:
I looked into your matter further and the reason why you can see the
'Varies with device' under 'Requires Android' is because the app is
unreleased.
Please note that if the app is published then the section for
'Requires Android' will be updated with the relevant information.
So I'll see if the values are correctly updated when I'll release the app.
I am getting the following error when trying to publish a new APK in Google Play:
It is forbidden to downgrade devices which previously used M permissions (target SDK 23 and above) to APKs which use old style permissions (target SDK 22 and below). This occurs in the change from version 2645 (target SDK 23) to version 2648 (target SDK 11).
I previously published only on Beta channel an APK with a target SDK of 23 in the manifest, just for testing.
I assume this is what causing the issue.
Does this mean I can't ever publish another APK with my regular manifest, which has a lower target SDK?
Did anyone encounter this and know of a way around it?
i want to show you something. hope you understand!
I've hit the same thing. I'm stuck on Marshmallow because I upgraded my target SDK in Beta.
One would think that you can back out as far as you want on a beta or alpha channel as long as it has not been published to production. That is the way it would work in the real world.
You only have a hind-site workaround.
The workaround is to not to develop for Marshmallow in Beta on your production app. Create a new application in Google Play and develop there until it is ready. This will also let you update the production code if a bug fix comes up before your marshmallow release.
What happens to existing users with the app installed when minSdkVersion is raised and their SDK version is less than that?
Do they still get the update from Google Play with a subsequent crash? Or do they stop getting updates from Google Play?
Below happens on minSdkVersion change
On apk upload, Google plays warns you on minSdkVersion telling how many users will be affected.
Existing users lower than minSdkVersion won't get update and cannot
see app in PlayStore
Existing users lower than minSdkVersion, if they uninstall, cannot
reinstall the application.
I suggest you use multiple apk option in PlayStore and continue to update your newer apk. Just keep the old one as it is.
For example, you can publish your application with one APK that
supports API levels 4 - 7 (Android 1.6 - 2.1)—using only APIs
available since API level 4 or lower—and another APK that supports API
levels 8 and above (Android 2.2+)—using APIs available since API level
8 or lower.
For more, read the android documentation on multiple apk support.
They will not get an update and it won't show up on Google Play for them any more. The version they have installed will remain on their device.
background:
My current app is already running on Google play with minSdkVersion=8. As every developer knows Froyo and Gingerbread should have died a couple of years ago, and finally the product team on the company allowed us to drop support for them and go to API 15. Yeah.
Approach:
The idea is to leave this last stable version still available for Gingerbread users to download, so what I'm trying is:
create a build with minSdkVersion=8; maxSdkVersion=14; versionCode=195
create another build with minSdkVersion=15; versionCode=250 (skipping a few version codes in case we NEED some emergency maintenance)
the issue:
it all builds fine, but Google Play does not allow the multi-apk upload with the following error:
This configuration cannot be published for the following reason(s):
It is forbidden that a device upgrading from API levels in range 8-14 to API levels in range 15+ should downgrade from version 195 to version 194
question:
is what I'm trying to do something that Google Play does automatically?
is it possible to do what I'm trying to do?
if possible, how?
The problem is maxSdkVersion=14; versionCode=195. This means that if someone has a device running API level 14, and they upgrade that device to 15, the version of the app they have installed (195) will not run.
Try omitting the maxSdkVersion. I'd hope that people in this scenario would then continue to be able to use the 195 build of the app, and then Google Play should upgrade it to the 250 build next time it performs its check.
Google Play does this automatically - users will receive the latest version that is compatible with their device so there's no need to publish your version 195.
As stated in that error, you should continue to have 15+ versions of the app have a higher version number than <15 builds - this will ensure that users only ever upgrade their app to maintain compatibility.
This error message sounds like Goole Play doesn't "see" your second APK (version 250) for API 15+ and it "believes" users with 15+ will have to downgrade to older version 194 when new version 195 gets installed. I never tried to upload multi-APK projects, but documentation says you need to switch into "advanced mode" (a button in the top-right corner) to upload multi-APK. In this mode "upload new apk" works a bit differently. I assume this might be the issue.