15
\$\begingroup\$

I'm porting a Unity game to Android, and I've set up the "Minimum API Level" in the Player settings to "2.3.3 (API level 10)".

However, on the store, it says "Requires Android: 1.6 and up".

On the Google Developer Console I didn't find this setting, so I guess the store is just trying to "guess" it examining the application, and failing.

Did I miss something?

\$\endgroup\$
  • \$\begingroup\$ is there something in your application that requires the higher android version? \$\endgroup\$ – wes Dec 12 '13 at 17:08
  • \$\begingroup\$ @wes I can't even go below API level 9, so I guess that Unity itself requires that. \$\endgroup\$ – o0'. Dec 12 '13 at 17:19
12
+50
\$\begingroup\$

You have probably published your APK as Alpha or Beta. This is a known bug and Google Play store will incorrectly show "Requires Android: 1.6 and up". When you deploy your APK as production, it will show the correct number.

You can check your apk's minSdkVersion by the command-line tool aapt (inside sdk/platform-tools)

aapt d badging game.apk

or

aapt l -a game.apk

But you should put the correct setting to your manifest in any case:

<uses-sdk android:minSdkVersion="A" android:targetSdkVersion="B" />
\$\endgroup\$
  • \$\begingroup\$ Yes it was alpha! \$\endgroup\$ – o0'. Jan 24 '14 at 10:11
  • \$\begingroup\$ @sm4, thanks! Also I see more mentions on SO, stackoverflow.com/questions/17185204/… \$\endgroup\$ – kagali-san Jan 24 '14 at 15:12
  • \$\begingroup\$ "This is a known bug" If it's known then is it recorded in some google issue tracer? Where? \$\endgroup\$ – Marian Paździoch Mar 6 '15 at 13:34
2
\$\begingroup\$

Okay. Instead of editing it directly like Lestat tried, how about trying to set it programmatically, with the help of Unity.

PlayerSettings.Android.minSdkVersion = AndroidApiLevel10;

Documentation for minSdkVersion

\$\endgroup\$
  • \$\begingroup\$ I no longer have access to that project, so I can't try that any more :/ \$\endgroup\$ – o0'. Jan 22 '14 at 16:24
  • 1
    \$\begingroup\$ @Lohoris :( I'm sorry. \$\endgroup\$ – Grey Jan 22 '14 at 17:23
1
\$\begingroup\$

That is defined in the Android Manifest file:

<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />
\$\endgroup\$
  • 1
    \$\begingroup\$ The manifest doesn't have that line, so it could be that Unity "forgot" to add it... I'll have a look tomorrow, thanks! \$\endgroup\$ – o0'. Dec 12 '13 at 17:46
  • \$\begingroup\$ Oddly, it didn't work: still "1.6 and up" \$\endgroup\$ – o0'. Dec 16 '13 at 17:13
0
\$\begingroup\$

It is possible that you and/or your IDE (if you're using one) may have missed something. It's likely that there are elements in your project that are causing this.

Check for anything that may have been introduced in a later API. Also be sure your project is targeting the correct API level.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.