Android playstore中10英寸平板电脑的应用程序列表,但7英寸平板电脑未显示

Android playstore中10英寸平板电脑的应用程序列表,但7英寸平板电脑未显示,android,google-play,android-manifest,Android,Google Play,Android Manifest,我已经按照其他帖子的建议检查了使用权限、使用功能和支持屏幕。我在playstore中上传了一个应用程序,作为以下清单文件的更新。以前的版本运行良好。该项目之前在eclipse中,现在被移动到android studio。我遇到了清单合并,因为使用了许多库,因此不必要地添加了很多权限,因此我分别删除了每个库。已选中“使用”权限和“也使用”功能。清单中以前版本的更改以星号表示 我的应用程序必须仅支持平板电脑 这是主清单文件 <?xml version="1.0" encoding="utf-8

我已经按照其他帖子的建议检查了使用权限、使用功能和支持屏幕。我在playstore中上传了一个应用程序,作为以下清单文件的更新。以前的版本运行良好。该项目之前在eclipse中,现在被移动到android studio。我遇到了清单合并,因为使用了许多库,因此不必要地添加了很多权限,因此我分别删除了每个库。已选中“使用”权限和“也使用”功能。清单中以前版本的更改以星号表示

我的应用程序必须仅支持平板电脑

这是主清单文件

<?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="com.xx.yy"
        android:versionCode="13"
        android:versionName="1.8.1">

        <uses-sdk
            android:minSdkVersion="14"
            android:targetSdkVersion="19" />

        <supports-screens
            android:largeScreens="true"
            android:normalScreens="false"
            android:requiresSmallestWidthDp="600"
            android:smallScreens="false"
            android:xlargeScreens="true"
            *tools:replace="android:normalScreens,android:smallScreens" />

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

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

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

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

        <permission
            android:name="com.xx.yy.permission.C2D_MESSAGE"
            android:protectionLevel="signature" />

        <uses-permission android:name="com.xx.yy.permission.C2D_MESSAGE" />
        <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
        <uses-permission android:name="android.permission.GET_TASKS" />
        <uses-permission android:name="android.permission.REORDER_TASKS" />
        *<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     *   <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>*

        *<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" tools:node="remove"/>
       * <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" tools:node="remove"/>
       * <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" tools:node="remove"/>
      *  <uses-permission android:name="android.permission.VIBRATE"  tools:node="remove"/>
       * <uses-permission android:name="android.permission.FLASHLIGHT"  tools:node="remove"/>
      *  <uses-permission android:name="android.permission.READ_CONTACTS"  tools:node="remove"/>
    </manifest>
我尝试在当前版本的apk上运行aapt转储标记以查找apk属性。 这就是结果

package: name='com.xx.yyy' versionCode='13' versionName='1.8.1' platformBuildVersionName='4.4W.2-1537038'
sdkVersion:'14'
targetSdkVersion:'19'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.CAMERA'
uses-permission: name='android.permission.ACCESS_NETWORK_STATE'
uses-permission: name='android.permission.GET_ACCOUNTS'
uses-permission: name='android.permission.WAKE_LOCK'
uses-permission: name='com.xx.yyy.permission.C2D_MESSAGE'
uses-permission: name='com.google.android.c2dm.permission.RECEIVE'
uses-permission: name='android.permission.GET_TASKS'
uses-permission: name='android.permission.REORDER_TASKS'
uses-permission: name='android.permission.ACCESS_COARSE_LOCATION'
uses-permission: name='android.permission.ACCESS_FINE_LOCATION'
application-label:'xyz'
application-icon-120:'res/drawable-mdpi-v4/icon.png'
application-icon-160:'res/drawable-mdpi-v4/icon.png'
application-icon-240:'res/drawable-hdpi-v4/icon.png'
application-icon-320:'res/drawable-xhdpi-v4/icon.png'
application-icon-480:'res/drawable-xxhdpi-v4/icon.png'
application: label='xyz' icon='res/drawable-mdpi-v4/icon.png'
launchable-activity: name='com.xx.yy.zz.SplashScreenActivity'  label='' icon=''
feature-group: label=''
  uses-feature: name='android.hardware.camera'
  uses-feature-not-required: name='android.hardware.camera.autofocus'
  uses-feature-not-required: name='android.hardware.camera.flash'
  uses-feature-not-required: name='android.hardware.camera.front'
  uses-feature-not-required: name='android.hardware.location.gps'
  uses-feature: name='android.hardware.screen.landscape'
  uses-feature: name='android.hardware.touchscreen'
  uses-feature-not-required: name='android.hardware.wifi'
  uses-feature: name='android.hardware.location'
  uses-implied-feature: name='android.hardware.location' reason='requested android.permission.ACCESS_COARSE_LOCATION permission, and requested android.permission.ACCESS_FINE_LOCATION permission'
  uses-feature: name='android.hardware.location.network'
  uses-implied-feature: name='android.hardware.location.network' reason='requested android.permission.ACCESS_COARSE_LOCATION permission'
main
other-activities
other-receivers
other-services
supports-screens: 'large' 'xlarge'
supports-any-density: 'true'
requires-smallest-width:'600'
locales: '--_--' 'ca' 'da' 'fa' 'ja' 'pa' 'ta' 'nb' 'id' 'be' 'de' 'he' 'te' 'af' 'bg' 'th' 'zh' 'fi' 'hi' 'vi' 'sk' 'uk' 'el' 'ml' 'nl' 'pl' 'sl' 'tl' 'am' 'bn' 'in' 'kn' 'ko' 'ro' 'ar' 'fr' 'hr' 'mr' 'sr' 'tr' 'cs' 'es' 'ms' 'it' 'lt' 'pt' 'eu' 'gu' 'hu' 'ru' 'zu' 'lv' 'sv' 'iw' 'sw' 'fr-CA' 'lo-LA' 'en-GB' 'et-EE' 'ka-GE' 'km-KH' 'zh-HK' 'hy-AM' 'zh-CN' 'en-IN' 'mn-MN' 'pt-BR' 'es-ES' 'es-US' 'pt-PT' 'zh-TW' 'ms-MY'
densities: '120' '160' '240' '320' '480'
native-code: 'armeabi' 'armeabi-v7a'
在7英寸设备上也可以看到应用程序时,我是否缺少了一些东西?我的应用程序必须仅支持平板电脑。 该应用程序未针对任何7英寸设备列出。 aapt dump徽标命令显示对大型和x大型设备的支持

清单合并是由于库中存在以下权限而发生的

<manifest
    package="com.google.zxing.client.android"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:installLocation="auto"
    android:versionCode="94"
    android:versionName="4.5.1">

    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.FLASHLIGHT"/>
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19"/>

    <!-- Don't require camera, as this requires a rear camera. This allows it to work on the Nexus 7 -->
    <uses-feature
        android:name="android.hardware.camera"
        android:required="false"/>
    <uses-feature
        android:name="android.hardware.camera.front"
        android:required="false"/>
    <!-- TODO replace above two with next line after Android 4.2 -->
    <!-- <uses-feature android:name="android.hardware.camera.any"/> -->
    <uses-feature
        android:name="android.hardware.camera.autofocus"
        android:required="false"/>
    <uses-feature
        android:name="android.hardware.camera.flash"
        android:required="false"/>
    <uses-feature android:name="android.hardware.screen.landscape"/>
    <uses-feature
        android:name="android.hardware.wifi"
        android:required="false"/>
    <!-- This excludes Google TV, which is unfortunately included by virtue of not requiring a camera -->
    <uses-feature android:name="android.hardware.touchscreen"/>
    <!-- TODO make this not required again after android.hardware.camera.any is available -->

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

</manifest>

更新1:我将使用功能android.hardware.location.gps更改为false,它不会直接出现在playstore搜索中。但当从浏览器中搜索并按install时,将导航到playstore并成功安装。我正在使用HP Slate 7安装


更新2:我已将android.hardware.location.network的使用功能更改为false,并上传了一个beta版本。等待它现在处于活动状态

这不是权限问题,而是导致此问题的

    <supports-screens
        android:largeScreens="true"
        android:normalScreens="false"
        android:requiresSmallestWidthDp="600"
        android:smallScreens="false"
        android:xlargeScreens="true"
        tools:replace="android:normalScreens,android:smallScreens" />

您的应用程序仅限于某些屏幕,因此我建议您查看它,尤其是设置为
false
的条目

编辑


tools:replace
告诉您要使用清单中的值,而不是libs中的值。而你的告诉
normalScreen=false
。而
normalScreen
传统上这是一个HVGA中密度屏幕,但WQVGA低密度和WVGA高密度也被认为是正常的
。我怀疑你发现问题的7英寸平板电脑没有高分辨率屏幕供电,如果是这样的话,这就是为什么你的应用程序被列为不兼容的原因。除非你的应用程序真的不能在
normalScreen
上工作,否则没有必要将其设置为
false

我在上传时遇到了同样的问题。它

当我删除所有的
使用功能块时,它开始列出所有手机和平板电脑。这是我的清单-

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.COMPANY.APP.app">

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

    <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.COMPANY.APP.app.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.COMPANY.APP.app.gcm.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.COMPANY.APP.app.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" />
</manifest>

通过添加解决

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

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

HP slate 7没有位置支持。要使应用程序在HP slate 7中可见,需要斜体的位置块

以下一组支持屏幕部分出现在上载的上一版本中。该应用程序在上一版本中列出。当前版本在更新中,唯一的更改是s以下行“tools:replace=”android:normalScreens,android:smallScreens“这条线会产生问题吗?以前使用的IDE是eclipse,现在我已经迁移到Android StudioMakes sense。我的应用程序只针对平板电脑。我的想法是,普通屏幕只用于手机。我会将正常屏幕更改为true并上传beta版本。一旦对我有效,我会接受答案。干杯检测平板电脑是一件棘手的事情,你绝对不能这样做。另一方面,为什么要限制应用程序的使用?若用户的设备有足够的屏幕空间让你们的应用程序显示所需内容,那个么不管它是平板电脑、手机还是toster,都让它运行。是的,同意。但是客户要求。我试过的平板电脑是华硕Nexus7(高分辨率323dpi)和惠普Slate 7(170 dpi)。它在上一版本更新中运行良好:我将使用特性android.hardware.location.gps更改为false,并且它不会直接出现在playstore搜索中。但当从浏览器中搜索并按install时,将导航到playstore并成功安装。我正在使用HP Slate 7安装**嘿,Jimit,以前的版本使用了相同的块并用于安装在7英寸的桌面上。我将使用功能android.hardware.location.gps更改为false,并且它不会直接出现在playstore搜索中。但当从浏览器中搜索并按install时,将导航到playstore并成功安装。我正在使用HP Slate 7进行安装,同时上载列出的所有平板电脑?我们无法访问仪表板。
*<uses-feature
            android:name="android.hardware.location"
            android:required="false" />*
 <uses-feature
            android:name="android.hardware.location.gps"
            android:required="false" />

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