Android 14 (API Level 34)

Hello everyone!

I received this message from Google Play:
“The application must be designed for Android 14 (API Level 34) or higher”.

What do you usually do in such situations? And how can I manage it?

2 Likes

Confusing information sheepishly removed by author.

Yep same here, we can’t upload an update unless its API 34. currently if i am not mistaken solar2d is at API 33. hopefully the solar2d Dev Gods will update the sdk :slight_smile: * cross fingers* , we still have atleast 2 months from today.

@colinmorgan this warning is about updating target SDK to 34

It’s so frustrating, I just finished updating all our apps to use the new billing library, and now will need to update them all again to the new API, yet the deadline is the same, Google could have sent out these notifications for billing and target SDK at the same time given the deadline is the same.

1 Like

Oops- Google blew up my inbox right after I posted. :rofl:

Anyway… The issue has been logged in GitHub and I just pinged Vlad.

Also, it will be possible to request an extension pushing the deadline back to November 1. (Extension request forms have not shown up on my dev console yet, but, if memory serves, they aren’t available until closer to the deadline.)

According to a policy update Google posted last year, August 31 is now the annual date when apps need to be running the latest version of Android, so we might as well put it in our collective calendars.

1 Like

I’m also curious, does this mean we have to specify "minSdkVersion = “34"”?

My game program can run normally on “33”, so there should be no compatibility issues.

But now the play store has not even released android 14, but it requires us to have at least version 14. Isn’t Google too exaggerated…

My device is the latest version, but it only has android13, Requirement 14 is for who to play… :joy:

I set the minSdkVersion to 34 and even so, when generating the bundle and sending it to the Play Store, it still detects it as 33

Should be added?↓
targetSdkVersion = “34”,

I don’t know if this will help as my program is not finished yet and I can’t submit it to the play store yet.
But I read the Android documentation, and it seems to be the main value to be determined.

@vb66r55 , @jdsmedeirosbr I removed my post up top because I fell into the trap of mixing up Android Version, SDK Version and API Level.

Confusingly, Google uses the terms SDK Version and API Level somewhat interchangeably- they refer to the same thing, which is different from Android Version. (To compare it to iOS, it’s the same as how we’re currently at iOS Version 17, and we use Xcode 15 to build it.) So Google’s new requirement is to build using API Level 34 which will result in apps that target Android Version 14.

In build.settings, minSdkVersion is a way of preventing older versions of Android from being able to install the app. minSdkVersion = 14 means that devices need to be running at least Android 1.01 (Ice Cream Sandwich). Setting minSdkVersion = 34 would mean that only devices running Android 14 would be able to install the app. For most people, this would be a mistake, because it would limit your users to only those people with the newest hardware.

To be compliant, the .apk/.aab needs to be built with a version of Solar2D that utilizes API Level 34. Currently, we don’t have that, so we need to wait for Vlad to bring out an update that targets API Level 34.

Please don’t set your minSdkVersion to 34.

2 Likes

Android 14 was released on October 4, 2023.
(I had to buy a new test device to have something that could run it. 🫤)

I see, but I haven’t received a way to update Android 14 in Taiwan, which is shocking. :joy:

Also I usually set minSdkVersion to 20 to make it available to more users, so I was confused at first. As it stands, we need waiting for the Solar 2D version to be updated and then build with the new version?

In fact, when I tested it on BlueStacks X, it almost rejected versions above 25.

Thank’s @colinmorgan.

If you can’t just change the numbers from 33 to 34, then it turns out that changing the API Level is not an easy task?

In that case, I would like to know if there is any way we can help Vlads?

I think it’s more complicated, I think you have to change something in the core of Solar2D, if it were just changed manually via code, we wouldn’t even need to wait for Vlad.

1 Like

Need a Solar2D update at your earliest conveneince please sirs. :pray:
Am due to release and currently cannot. :pensive:

1 Like

Why can’t you release? The deadline isn’t until August 31- are they blocking new apps?

They were listing the API level as an error and would not allow me to create a new release.
Logged on this evening and it’s now a warning, so has let me do so. :+1:

Yes, the same here… We have a native Build setup and had to update the Build-Process, too.
It works fine with a native Build process, but it still in Google Play review…

Our Message that we got 3 weeks ago in PlayStore:
Update your Play Core Maven dependency to an Android 14 compatible version! Your current Play Core library is incompatible with targetSdkVersion 34 (Android 14), which introduces a backwards-incompatible change to broadcast receivers to improve user security. As a reminder, from August 31, Google Play requires all new app releases to target Android 14. Update to the latest Play Core library version dependency to avoid app crashes: Visão geral das bibliotecas Google Play Core  |  Android Developers

For the Solar2D direct build process you have to add the minSdkVersion in the build.settings file.

Example:

settings = {
    orientation = {
        default = "portrait",
        supported = { "portrait", "portraitUpsideDown" }
    },
    android = {
        minSdkVersion = "34",
        usesPermissions = {
            "android.permission.INTERNET",
        },
    },
}

More Infos:

Just adding this piece of code to build.settings doesn’t work.