2015-09-04 59 views
0

下面是我的Android清单。任何人都可以帮助我,为什么我的应用程序显然不支持任何设备,当apk上传到android play/dev控制台?
我已经包含支持/兼容屏幕,但我知道只有一个是必需的。我没有“虚假”的价值/属性,我的所有权限都是正确的。Android App Publishing - “没有设备支持”

我意识到这可能是重复的,但是,我发现的唯一问题是我没有的问题(false属性等)或仅适用于该应用不支持的特定设备。

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="PACKAGE.NAME" 
    android:versionCode="7" 
    android:versionName="0.1.4"> 

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

    <compatible-screens> 
     <!--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-sdk 
     android:minSdkVersion="16" 
     android:targetSdkVersion="20"/> 

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

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

    <application 
     android:name="NAME" 
     android:allowBackup="true" 
     android:icon="@drawable/logoapp" 
     android:label="@string/app_name"> 

     <meta-data android:name="assist-host" android:value="IP_ADDRESS"/> 
     <meta-data android:name="assist-port" android:value="PORT_NO"/> 

     <activity android:name=".LoginActivity" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:label="@string/app_name" 
      android:windowSoftInputMode="adjustResize|stateVisible"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN"/> 
       <category android:name="android.intent.category.LAUNCHER"/> 
      </intent-filter> 
     </activity> 
     <activity android:name=".Main"/> 
     <activity android:name=".InCallActivity" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:launchMode="singleTask"/> 

     <activity android:name=".ResolutionActivity" 
      android:label="@string/title_activity_resolution" /> 
     <activity android:name=".CameraSelectionActivity" 
      android:label="@string/title_activity_camera_selection" /> 

     <activity android:name=".MainActivity"/> 
     <activity android:name=".PreferencesActivity"/> 

     <activity android:name=".ActivityLAInCall" 
      android:launchMode="singleTop"/> 

     <service android:name=".RingtoneBackgroundService"/> 
     <service android:name=".AssistService"/> 
    </application> 
</manifest> 
+1

'android.feature.CAMERA'这似乎是一个不正确允许!正确的是'android.hardware.camera' –

回答

2

只需添加

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

为支撑,屏幕的详细信息读取如果这个page

删除此您的应用程序不支持平板电脑android:requiresSmallestWidthDp="720"


删除兼容屏来自清单的元素,因为

注意:通常情况下,你不应该使用这个清单元素兼容屏。使用此元素可以显着减少应用程序的潜在用户群,因为如果用户没有列出屏幕配置的设备,则不允许用户安装应用程序。当应用程序绝对不适用于特定的屏幕配置时,您应该仅将它用作最后的手段。您应该遵循“支持多个屏幕”的指南,为多个屏幕提供可扩展的支持,使用不同的屏幕大小和密度的布局和位图。

在这里阅读更多compatible-screens

因此,删除下面代码的Android清单后做

<!-- 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> 

荷兰国际集团这一点,你的应用程序支持更多的则8000个设备:)

也改变这种android.feature.CAMERAandroid.hardware.camera,如果不能需要相机,然后改变这种android:required="true"android:required="false"

+0

这工作,谢谢。我认为主要问题是相机。该死的复制和粘贴! – hipkiss

+0

我认为'兼容屏幕'主要问题,我会尝试错误的未来,并让你知道一段时间后。发生了什么 –

+0

我之前尝试了没有额外的屏幕,也没有工作,唯一的共同点是feature.camera。我已经上传到现在的商店,它的工作原理。 :-) 6000个支持的设备。 – hipkiss