Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android : Your device isn't compatible with this version

Tags:

android

enter image description here

Currently my app is uploaded on play store and Android kitkat (4.4) devices is not compatible to install my app, my app min target API is 16, I attached image also

<uses-sdk
    android:minSdkVersion="16"
    android:targetSdkVersion="21" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature
    android:name="android.hardware.camera"
    android:required="true" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<permission
    android:name="com.demo.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name=".permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<application
    android:name="Application"
    android:allowBackup="true"
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:largeHeap="true"
    android:theme="@style/AppTheme" >
    <activity
        android:name="SplashActivity"
        android:label="@string/app_name"
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".help.HelpActivity"
        android:screenOrientation="portrait" >
    </activity>
    <activity
        android:name=".help.Disclaimer"
        android:screenOrientation="portrait" >
    </activity>

What should i do for this?

like image 390
Mohit Suthar Avatar asked Sep 27 '22 03:09

Mohit Suthar


3 Answers

Try removing <uses-feature>.

<uses-feature> - Declares a single hardware or software feature that is used by the application.

The purpose of a declaration is to inform any external entity of the set of hardware and software features on which your application depends. The element offers a required attribute that lets you specify whether your application requires and cannot function without the declared feature, or whether it prefers to have the feature but can function without it. Because feature support can vary across Android devices, the element serves an important role in letting an application describe the device-variable features that it uses. read for more

like image 111
Archit Goel Avatar answered Oct 21 '22 19:10

Archit Goel


try removing this

<uses-feature
   android:name="android.hardware.camera"
   android:required="true" />
<uses-feature android:name="android.hardware.camera.autofocus" />

But after doing this you have to take care about the features, if not available.

like image 25
Ravi Avatar answered Oct 21 '22 20:10

Ravi


Either remove uses-feature or add required=false in it. Only this will help. I had similar problem with my app and this worked. But, doing this means handling the features, if not available.

like image 1
Krrishnaaaa Avatar answered Oct 21 '22 19:10

Krrishnaaaa