Some users reported this error when attempting to install my app from Google Play store. I could not find any reference to it, so documenting the solution here.
I found this little gem in a list of notifications in google play developer:
Starting from 1 Nov 2022, apps that don't target an API level within two years of the latest Android release (API 29 and below) won't be available to new users with devices running Android versions newer than your app's target API level. This means that new users won't be able to discover or install your app on Google Play
Wow! That is going to cause a heck of a lot of apps to stop working, and require a lot of development work on apps that are perfectly functional and don't otherwise need updating.
Solution is to update your targetSdkVersion
in your app.
And remember to do this every 2 years for all your apps!
(For my build tools I find searching everywhere using Android Studio for 'targetSdkVersion' and updating the numbers from 29 to 31 is the simplest approach, then fixing any resulting build errors, which in this case meant I had to upgrade Android Studio as well due to java version 11 being required for android 31 - refer unrecognized Attribute name MODULE (class com.sun.tools.javac.util.SharedNameTable$NameImpl)).
I ran into a similar error. We had an APK with API 31 in the internal test release section. In the Google Play console and devices with Android 12 and 13, we were presenting that message when trying to download the app:
This app isn't available for your device because it was made for an older version of Android.
The way it was solved is to release this version with API 31 or higher to production. This is because the store has a bug in it, and if you currently have an old APK in production with an API of 29, for example, this will generate an incompatibility with the others APKs that are in the test segments. That is, when launching to production, the new APK deactivates the old version that creates a conflict, and there will no longer be a problem when downloading on the new devices.
If you see this test as risky, you can make a progressive launch of 1% in the production segment.
My current release app has both compileSdk and targetSdk set to API 30. I have plenty of users on Android 13 and Android 12 downloading and install my app on a weekly basis. But last week I got a user running Android 12 who got the same OP error. The current version of my app was last published to the Play store on Nov 11, 2022 - so well within the two years others mentioned in above responses.
In my play console, I have a Policy Issue
that states Violation: App must target Android 12 (API Level 31) or higher as of August 30th
So take this for what its worth....and get it updated. But what is odd is I have other users on Android 12 and 13 who have been able to download my app without any issue.
purchasing
maneuver. 1. Apps not updated won't run on newer devices. 2. Force apps to run on the newest OS. 3. Newer apps won't run on older devices. 4. Force users to buy new phones because the apps they want will no longer run or get updated on older devices. Two years I could understand....but 1 year. ..come on, thats aggressive as hell. –
Neurotomy © 2022 - 2024 — McMap. All rights reserved.