简体   繁体   中英

Google Play - Zero Supported Devices

I'm aware there are similar questions on here, but none seem to have a satisfactory answer.

I'm trying to publish an app, but no matter what I try the developer console is reporting that there are zero supported devices

Dev Console截图

Here's my full manifest;

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.blah.blahpro"
    android:versionCode="6"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="5" android:targetSdkVersion="17"/>

     <supports-screens
        android:anyDensity="true"

        android:xlargeScreens="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:resizeable="true"   />

    <compatible-screens>

    <!-- small size screens -->
     <screen android:screenSize="small" android:screenDensity="ldpi" />
    <screen android:screenSize="small" android:screenDensity="mdpi" />
    <screen android:screenSize="small" android:screenDensity="hdpi" />
    <screen android:screenSize="small" android:screenDensity="xhdpi" />

    <!--Only hdpi and xhdpi for normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />

    <!-- all large size screens -->
    <screen android:screenSize="large" android:screenDensity="ldpi" />
    <screen android:screenSize="large" android:screenDensity="mdpi" />
    <screen android:screenSize="large" android:screenDensity="hdpi" />
    <screen android:screenSize="large" android:screenDensity="xhdpi" />

    <!-- all xlarge size screens -->
    <screen android:screenSize="xlarge" android:screenDensity="ldpi" />
    <screen android:screenSize="xlarge" android:screenDensity="mdpi" />
    <screen android:screenSize="xlarge" android:screenDensity="hdpi" />
    <screen android:screenSize="xlarge" android:screenDensity="xhdpi" />

    <!-- Special case for Nexus 7 -->
    <screen android:screenSize="large" android:screenDensity="213" />

    </compatible-screens>        

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

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-feature android:name="android.hardware.CAMERA" />
    <uses-permission android:name="android.permission.CAMERA" />

    <application
        android:icon="@drawable/blahicon"
        android:label="@string/app_name"
        android:allowBackup="false">

        <activity
            android:label="@string/app_name"
            android:name="com.blah.blahpro.Main" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:label="@string/app_name"
            android:name="com.blah.satcalcpro.Find"
            >

            <intent-filter >
                <action android:name="com.blah.lookangles.FIND" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>        


    </application>


</manifest>

Any help is appreciated.

Problem sorted, but not sure exactly how... I tried removing all of the compatible-screen and support-screen code, but it didn't make much difference. The only thing I can think of is that I removed the line;

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

Which shouldn't have been there anyway. Now supported by 2522 devices, so pretty happy.

Here's the new manifest anyway:

<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="17"/>


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

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

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Light"
    android:allowBackup="false">

    <activity
        android:label="@string/app_name"
        android:name="com.blah.blahpro.Main" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:label="@string/app_name"
        android:name="com.blah.blahpro.Find"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
        >

        <intent-filter >
            <action android:name="com.blah.blahactivity.FIND" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>        


</application>

It seems that uses-feature is case sensitive.

You wrote two features in your manifest:

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

The first one is OK. You'd like to use a camera, but it is not required.

The problem is that the second requires an android.hardware.CAMERA , which is not present in any Android device. They have a camera , not a CAMERA .

I hope this helps you.

I suggest commenting out compatible-screens and support-screens in the manifest, and see what happens when you upload the apk. I expect you will see that many devices are allowed when you do this.

Then, add back these requirements a few at a time, uploading the apk each time and seeing which restrictions are causing the # of devices to drop. Once you determine which restrictions are causing the problem, you can keep those out of the final build.

I know it is late to answer, I face the same problem. With setting false all users-features, play store still shows zero devices supported.

Here is solution, hope will help someone

<uses-feature
        android:glEsVersion="0x00020000"
        android:required="true" />

Also

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

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