播放控制台上支持的设备0

时间:2016-10-02 06:35:30

标签: android google-play android-manifest

Play控制台显示“支持的设备0”。

问题

  1. 我应该等待发布完成吗?
  2. 我是否应该期望支持的设备数量会增加>上传后立即0?
  3. 我需要相机功能,没有相机我没关系,如果它没有出现在该设备的游戏商店。

    我的清单文件的相关部分如下所示。

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              package="<mypackagename>">
    
    
        <!-- Without this Google Play Store will not support any device -->
        <supports-screens
            android:anyDensity="true"
            android:largeScreens="true"
            android:normalScreens="true"
            android:resizeable="true"
            android:smallScreens="true"
            android:xlargeScreens="true" />
    
        <!-- For Options menu call support -->
        <uses-permission android:name="android.permission.CALL_PHONE"/>
    
        <!-- To auto-complete the email text field in the login form with the user's emails -->
        <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    
        <!-- To auto-complete the email text field in the login form with the user's emails -->
        <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
        <!-- For the background service to run forever -->
        <uses-permission android:name="android.permission.WAKE_LOCK"/>
    
        <!-- For Current Location on Driver App -->
        <permission
            android:name="${manifestApplicationId}.permission.MAPS_RECEIVE"
            android:protectionLevel="signature"/>
    
        <uses-permission android:name="${manifestApplicationId}.permission.MAPS_RECEIVE"/>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    
        <!-- For QR Code -->
        <uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.CAMERA"/>
        <uses-feature android:name="android.hardware.camera2"/>
        <uses-permission android:name="android.permission.GET_TASKS"/>
    
        <!-- Google Cloud Messaging -->
        <uses-permission
            android:name="${manifestApplicationId}.permission.C2D_MESSAGE"
            android:protectionLevel="signature"/>
        <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
    
        <!-- This must be set to true, since Google Maps V2.0 needs this -->
        <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true"/>
    
        <application
            android:name="<mypackagename>.InitializingApplication"
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:largeHeap="true"
            android:supportsRtl="true"
            android:theme="@style/AppTheme.NoActionBar">
            <meta-data
                android:name="com.google.android.gms.version"
                android:value="@integer/google_play_services_version"/>
    
            <meta-data
                android:name="com.google.android.geo.API_KEY"
                android:value="${mapsKey}"/>
    
            <activity
                android:name="<mypackagename>.SplashScreen"
                android:configChanges="orientation|keyboardHidden|screenSize"
                android:label="<AppliationName>"
                android:screenOrientation="portrait"
                android:theme="@style/AppTheme.NoActionBar.Translucent"
                android:noHistory="true">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
    
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
            <activity
                android:name="<mypackagename>.DeviceProvision"
                android:label="@string/title_activity_device_provision"
                android:screenOrientation="portrait"/>
            <activity
                android:name="<mypackagename>.PassengerHome"
                android:label="@string/title_activity_passenger_home"
                android:screenOrientation="portrait"
                android:theme="@style/AppTheme.NoActionBar"/>
    
    
    
        </application>
    
    </manifest>
    

    编辑:

    使用<uses-feature android:name="android.hardware.camera2"/>为我提供了0个支持的设备。

    使用<uses-feature android:name="android.hardware.camera2" required=false/>为我提供了完整的8900个设备。

    什么废话?我应该只能选择有相机的设备。这是多么愚蠢的环境?

    此外,我没有等待发布完成,只需上传支持的设备数量达到8900.

1 个答案:

答案 0 :(得分:2)

您获得0个支持的设备,因为您需要不存在的功能。没有名为android.hardware.camera2的此类功能。

android.hardware.camera2是提供Camera接口的包。所以,那就是包装而不是功能的标签。

如果您的应用需要相机,请从以下功能中进行选择:

  • <uses-feature android:name="android.hardware.camera"/> - 如果需要后置摄像头
  • <uses-feature android:name="android.hardware.camera.front"/> - 如果前面......
  • <uses-feature android:name="android.hardware.camera.any"/> - 任何凸轮都可以

Src:https://developer.android.com/guide/topics/manifest/uses-feature-element.html

  

此外,我无需等待发布完成,只需上传即可   将支持的设备数量提高到8900。

是的,一旦上传的Play商店可以访问您的apk文件。所以它可以运行

aapt dump badging <path-to-apk>

并获取您要求的设备功能列表。你可以自己试试。从命令行运行它。