Google Play app update - can't publish a new apk - android

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.

Related

In appgyver, How to change app build target to 8.0 (Android)?

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

How to delete the beta application submitted to Google Play store?

I need help for removing the beta app submitted in google play store, Recently I have submitted my app with Targeted SDK version 23 for beta testing but now I want to submit the app with targeted SDK version 15 for production.
I have tried by submitting the App to Production with targeted SDK version 15 but it showed me an error saying:
Permission model downgrade PROBLEM: Users that have the APK version
code XXXX1, which targets SDK 23 or higher, will receive an error when
they attempt to upgrade to this apk XXXX2 because it targets SDK 15.
Is there any way to delete the existing beta app or to submit the production app with SDK15 other than un-publishing the app? Un-publishing the app will cause the inconvenience to existing users.
There is no way to delete a build from the Alpha or Beta channels. What you have to do is, deploy an artifact with a higher build code to the channel, then promote the channel to production. The APK that you want to remove will not show up, only the build with the highest build code, so there is no risk to doing this.
(source - just worked with Google Play support on a similar issue.)

How do I roll back Gradle SDK settings on a published Play app? What is Target SDK and minimum SDKs?

As I was developing, I published to SDK 21, Lollipop, and I'm not able to use it on my KitKat device. The applications are really simple and I only used the SDK for the animations and for material design, however two things come up when I try and make changes to the play store.
I'm not sure what to set for my app. There is target SDK, minimum sdk, and such. I set all of these to 21 to 22. Now, if I try and publish an app that uses SDK minimum 11, Play gets mad and says that it cant roll back on devices. I don't care to update the users phones. Its a simple application that doesnt require that, but it won't let me update and replace the primary apk.
What should I do? What should I change? Apps are posted here under Thered Software on Google Play.
You can publish multiple apk's for different api-levels: http://developer.android.com/training/multiple-apks/api.html
First you should make sure you understand the difference between the compile SDK, minimum SDK, and target SDK versions. These are explained well in What is the difference between min SDK version/target SDK version vs. compile SDK version?.
Now, if I try and publish an app that uses SDK minimum 11, Play gets mad and says that it cant roll back on devices.
It would help if you posted the specific error message that the Play Store shows you, but it sounds like you are trying to upload an APK with a lower version code than an existing version of your app.
For example, let's assume you previously uploaded an APK that had a min SDK of 21 and you labeled that APK as version 56 of your application. Any version you upload now needs to have a version code of 57 or higher. This is because Android uses this version code to determine which version of an application is "newer."
This is specified in your build.gradle, as below:
android {
defaultConfig {
versionCode 56
}
}
Change your minsdk requirement in the manifest.
Do a new release (don't forget to increment the version code).
That is all.

Google play upload failed because of google play service version

Upload failed
You uploaded an APK that uses Google Play services version 6111000. You need touse version 5100000 or lower.
Warnings
You uploaded an APK that uses Google Play services version 6111000. This will only work with Android API levels of 9 and above. It is discouraged to use this Google Play services version unless you have set the minSdkVersion in your manifest to 9 or higher.
How to fix this error other than increasing minSdk to 9 ? I m using eclipse for making the apk.
Just download the old version here, and then import it to your project.
Dont forget to remove the reference from the old version from your project.
Now google play will accept your app.
You are using the latest Play Service version (6.1) which start rolling out today.
The new Play Service (4.0+) only supported on Android 2.3+
You have two options:
1- Use Play Service For Froyo. (not recommended at all)
2- Update The minSdkVersion in your manifest to 9
PS: also I recommended you to use Play Service 5.X instead of 6.1. it start rolling out today and it need about two weeks to be installed on all users devices.
There are two approaches to this problem first one change the target sdk but that one of course you have mentioned not to use. The other one in my opinion would be to update your sdk and from google-> google playservices-> get the google play and update it in your project.
I hope this will work.

Deprecate API version but allow users to download old APK

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.

Categories

Resources