Google控制台显示0设备兼容性

时间:2015-11-18 05:56:31

标签: android google-play google-console-developer

在Google Play上发布我的Android应用程序时,它显示0设备兼容。任何人都可以帮助我,为什么会这样? 但是在许多其他设备上使用时它正在工作

清单的一部分如下所示

<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<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" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="com.myapp.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<permission
    android:name="com.myapp.gcm.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.myapp.gcm.permission.C2D_MESSAGE" />
<uses-permission
    android:name="android.permission.FLASHLIGHT"
    android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
    android:protectionLevel="normal" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

<permission
    android:name="com.myapp.app.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="false" />
<uses-feature android:name="android.hardware.camera"/>
<uses-feature
    android:name="android.hardware.camera.front" />
<uses-feature
    android:name="android.hardware.camera.flash"
    android:required="false" />
<uses-feature android:name="android.hardware.camera.setParameters"/>

并且在gradle中

    android {
    useLibrary 'org.apache.http.legacy'
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "com.myapp.app"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 2
        versionName "1.0.1"
    }
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

我检查了很多其他链接,并更改了相机的配置,这是camera2,现在它是相机。我不知道出了什么问题,我第一次在Google Play上发布应用程序。

2 个答案:

答案 0 :(得分:2)

您的MAPS_RECEIVE权限没有相同的软件包名称 -

<uses-permission android:name="com.stylabs.styfi.app.permission.MAPS_RECEIVE" />

VS

<permission
    android:name="com.myapp.app.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

对于谷歌地图的最新版本,我认为只删除它们是安全的,因为它们不再需要,但如果保留它们,则包名称应匹配。

以下评论中,您的GCM权限也看起来有误,因为它们与MAPS_RECEIVE个软件包名称都不匹配。它们相互匹配,因此可能不会过滤掉商店中的设备,但会阻止GCM正常工作,因此这些软件包也应该使用您的软件包名称进行更新。

答案 1 :(得分:1)

如果列出实际不存在的<uses-feature>字符串,那么您将不匹配任何设备。据我所知,没有

这样的功能
<uses-feature android:name="android.hardware.camera.setParameters"/>

删除它,或者至少为其设置android:required="false"