Google Play shows wrong minSdkVersion for Android app - android

I added android:minSdkVersion="14 to the manifest of my Android app to only allow Android 4+ devices but Google Play shows that my app Requires Android 1.6 and up. Is there anything wrong with my manifest?
<android>
<manifestAdditions>
<![CDATA[
<manifest android:installLocation="auto">
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="21" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.android.vending.BILLING" />
</manifest>]]>
</manifestAdditions>
</android>
I used the Adobe AIR SDK 17 and packaged the app through ADT (command line).

It's a bug on Google Play! (it affects Beta and Alpha apps - I guess your app is in that state?) Check your APK details in the Developer Console for the API level - as long as it's correct your set. It should show the correct API level as soon as you publish the app to production.

Related

App in Google Play Store (Beta-Test) says "App not compatible with your devices"

i have written an android app with xamarin.android in visual studio and compiled a release build for android 4.1 and higher. testing directly with my devices works without problems.
after building an apk and uploading it in the play store for a beta test, it says: "app not compatible with your devices". i am pretty sure, that my test devices are not the problem. what could it be??
here is my manifest file:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="xxx" android:versionCode="1" android:versionName="1.1" android:installLocation="auto">
<uses-sdk android:minSdkVersion="14" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application android:label="alone" android:icon="#drawable/Icon"></application>
</manifest>
on developer interface it says 10106 supported devices:
any ideas? thanks for your help...
best regards from germany,
steven
I dont use xamarin , but using studio if your gradle hava a different min sdk it will overwrite whatever os on you manifest , check your gradle file .

Is <supports-screens> in manifest required for tablet devices to use your app?

I have an app on Google Play. Users with an Asus Transformer can't find the app for some reason. My manifest is really simple:
<manifest
package="com.me.test"
android:versionCode="1"
android:versionName="1" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.INTERNET" />
<application
... >
<activity>
...
</activity>
</application>
</manifest>
Do I need to explicitly declare for it to consider the app "compatible"? The Play store lists over 4k devices as compatible with my app, and all the asus tablet models appear on my end as "compatible".
Thanks
In one of my apps I have no screenshots for 7" or 10" tablets in Google Developer Console. I also have not declared <supports-screens> for any size, in my manifest. I have "Supported devices 6250" and "Excluded devices 0". I have a fairly standard app with a manifest similar to yours:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.app"
android:installLocation="auto"
android:versionCode="1234"
android:versionName="1234" >
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name" >
<activity
... >
</activity>
...
</application>
</manifest>
In optimization tips for the app under Google Developer Console I have the following points under "Design your app for tablets":
Your Production APK needs to meet the following criteria:
The minimum Android version and target Android version need to support tablets (check targetSdkVersion and minSdkVersion). Learn more
Your APK should support common tablet screen sizes (LARGE and XLARGE). Learn more
Upload tablet screenshots: Upload at least one screenshot for 7-inch and 10-inch tablets to the Store Listing. Learn more
I can however confirm that my app DOES appear in Google Play for a 10" tablet running 4.2 and another 10" tablet running 4.4, without the <supports-screens> tag. The difference I see in our manifests is the minSdkVersion and targetSdkVersion. It may be that higher values of this does in fact require those options to be set as initial support for tablet was added in API level 11. If not, I would suspect there to be some other aspect of your app that makes it ineligable for Asus Transformer.

Version of the application in Google Play does not match the manifest

Placing the application in Google Play, I saw that the required version set to "1.6 or later", but in the manifest worth 4.0.
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19"/>

“your device isn't compatible with this version”

I have an app on the google play app store for more than two years with more than 8000 download and its a paid app. recently i received a mail from one of the customers saying that he had been using the app over two years and recently he updated his devices with latest os versions
after which he is not able to install the app from the app store. No updates have been pushed from developer end. the customer gets the error " your device is not compatible with this version" but the app is of the
same version that he had been using. what could be the error. any suggestion pls
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="au.example.test"
android:installLocation="auto"
android:versionCode="12"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<supports-screens android:largeScreens="true" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
In AndroidManifest.xml you can specify the minimum and maximum sdk version in this form:
<uses-sdk android:minSdkVersion="integer"
android:targetSdkVersion="integer"
android:maxSdkVersion="integer" />
Change your maxSdkVersion to the latest android sdk version(18), then it should work
This may or not make a difference but it is recommended that you target a particular API level. It may be worth setting the target sdk version to the latest android release and ensure it is working as expected.

uses-sdk in AndroidManifest

I'm a little confused about something.
I wrote an app and tested it on an LG Ally with the following specs:
Android version: 2.2.2
Kernel version: 2.6.32.9
Build number: FRG83G
Now I'm trying to install it (via adb install AppName.apk) on an HTC with the following specs:
Android version: 2.3.3
Kernel version: 2.6.35.10-gc0a661b HTC-kernel#and 18-2#1
Build number: 4.24.651.1 CL61076
and I get an error like 'error parsing package'
Here's where I get confused. I wanted to try duplicate the problem. So I created an emulator AVD with the specs:
Android version: 4.0.3
Kernel version: 2.6.29-g46b05b2 vchtchetkine#vc-irv #28
Build number: google_sdk-eng 4.0.4 MR1 302030 test-keys
And....I am able to install my app successfully with the adb install command that will NOT install the app on the HTC.
I don't understand why I'm able to use 'adb install' to put it on the LG Ally and the emulator but I get the parse error on the HTC.
I thought I might need in the AndroidManifest but then why am I able to install on the emulator without it?
My manifest is below (I removed the activity definitions for brevity):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mj.molepatrol"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="#drawable/icon" android:label="#string/app_name">
<uses-library android:name="com.google.android.maps" />
</application>
<uses-permission
android:name="android.permission.READ_CALENDAR">
</uses-permission>
<uses-permission
android:name="android.permission.WRITE_CALENDAR">
</uses-permission>
<uses-permission
android:name="android.permission.EDIT_CALENDAR">
</uses-permission>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
</manifest>
Try to use
<uses-sdk android:minSdkVersion="10">
It will solve your problem. Because, I read this documentation about uses-sdk,
Caution: If you do not declare this (uses-sdk android:minSdkVersion) attribute, the system assumes a default value of "1", which indicates that your application is compatible with all versions of Android. If your application is not compatible with all versions (for instance, it uses APIs introduced in API Level 3) and you have not declared the proper minSdkVersion, then when installed on a system with an API Level less than 3, the application will crash during runtime when attempting to access the unavailable APIs. For this reason, be certain to declare the appropriate API Level in the minSdkVersion attribute.
Source: Android Developers Website
The possible problem for this is that you are using a feature that is not available to the device. Such as a camera or NFC.
You have only set minSdkVersion and targetSdkVersion right?
There will be something in the manifest that the htc doesn't like, please post your AndroidManifest.xml file so we can see specifics and figure it out for you

Categories

Resources