简体   繁体   中英

android: device not supported by app- why?

I am currently developing a camera app. Now one of the users is complaining that his device is not supported. It's a Acer A200 :

I don't see any reason why android market / google play marks the app as not supported for this device. Do you know what might be the reason?

Here is the manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="net.ttttrash.myapp"
    android:versionCode="32"
    android:versionName="3.2" >

    <application
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:hardwareAccelerated="true">
        <activity
            android:name=".CameraActivity"
            android:configChanges="keyboard|orientation|keyboardHidden"
            android:label="@string/app_name"
            android:windowSoftInputMode="adjustPan" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.media.action.IMAGE_CAPTURE" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name="net.ttttrash.myapp.PreferenceActivity"
            android:label="@string/set_preferences" >
        </activity>
        <activity 
            android:name="com.google.ads.AdActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize">
        </activity>

    </application>

    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="8" />

    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

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

</manifest>

Thanks to Entreco I found the answer. Just looked up the supported devices in my app settings. Then, by comparing the feature specifications of the not supported tablet (Acer Iconia A200) to a supported device (A510 tablet) I found the answer: The A200 does not have a rear camera. So what's def. missing is following entry in the manifest:

<uses-feature android:name="android.hardware.camera.front" android:required="false" />

在此处输入图片说明

Ok, this is a long shot, but could it be the camera is disabled for some reason on that particular device?

It seems that the following permission:

<uses-permission android:name="android.permission.CAMERA" />

Implies that your app is using android.hardware.camera and android.hardware.camera.autofocus features. However you defined only android.hardware.camera.autofocus as non-mandatory. So try adding:

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

Details about google play application filtering

Add this to your manifest:

<supports-screens android:smallScreens="true"
              android:normalScreens="true"
              android:largeScreens="true"
              android:xlargeScreens="true" />

I'm assumuing that leaving out explicit support for tablets (xlargeScreens) causes Google Play to consider it unsupported.

I once had the same issue, when it turned out that the user installed a custom rom . This custom rom had a bug in the Camera (eg the camera was not supported, which is quite common for roms), and that was causing the app to not be compatible...

Also, double check in your google play developer account, if the Acer A200 is amongst the supported devices. Eg in the developer console, check Device Catalogue under Release Management ! There, you can search for your device, and you can see if the device is supported. 在此处输入图片说明

我得到了“ 150个设备的支持”,并通过将minSdkVersion从28降低到24来改变了这一点。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM