【问题标题】:Nexus 6 not supported in Play StorePlay 商店不支持 Nexus 6
【发布时间】:2015-05-30 22:40:10
【问题描述】:

我有一个 Nexus 6(1440 x 2560 像素(~493 ppi 像素密度))和一个 LG G3(1440 x 2560 像素(~538 ppi 像素密度))和这个清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="..."
          android:installLocation="preferExternal"
          android:versionCode="..."
          android:versionName="...">

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

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

    <uses-feature
            android:name="android.hardware.touchscreen"
            android:required="true"/>
    <uses-feature
            android:name="android.hardware.location"
            android:required="true"/>

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

    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    <uses-permission android:name="android.permission.WAKE_LOCK"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

    <!--GCM-->
    <permission android:name="...permission.C2D_MESSAGE" android:protectionLevel="signature"/>
    <uses-permission android:name="...permission.C2D_MESSAGE"/>
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>

    <!-- =========== Screen Types =========== -->
    <supports-screens android:requiresSmallestWidthDp="400"/>
    <compatible-screens>
        <!-- all small size screens -->
        <screen
                android:screenDensity="mdpi"
                android:screenSize="small"/>
        <screen
                android:screenDensity="hdpi"
                android:screenSize="small"/>
        <screen
                android:screenDensity="xhdpi"
                android:screenSize="small"/>
        <screen
                android:screenDensity="480"
                android:screenSize="small"/>
        <screen
                android:screenDensity="640"
                android:screenSize="small"/>

        <!-- all normal size screens -->
        <screen
                android:screenDensity="mdpi"
                android:screenSize="normal"/>
        <screen
                android:screenDensity="hdpi"
                android:screenSize="normal"/>
        <screen
                android:screenDensity="xhdpi"
                android:screenSize="normal"/>
        <screen
                android:screenDensity="480"
                android:screenSize="normal"/>
        <screen
                android:screenDensity="640"
                android:screenSize="normal"/>

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

LG G3 可以下载该应用,但 Nexus 6 不能。我在这里错过了什么?
谢谢。

编辑: Haresh Chhelana 的回答是正确的,尽管这更像是一种解决方案。我认为谷歌应该改变supports-screens,不仅仅是为了启用屏幕兼容模式(在我看来没什么用),而是为了排除一些设备。更合乎逻辑的是:

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

而不是在compatible-screens 中指定所有可能的组合,这就是发生此类错误的原因(这在我们只需要平板电脑时有效,因此它应该也适用于手机,但它不...)。

【问题讨论】:

  • 只是好奇,屏幕尺寸和密度的所有这些限制是什么?
  • 我只想要手机,没有平板电脑和 480 = xxhdpi, 640 = xxxhdpi

标签: android google-play android-manifest


【解决方案1】:

尝试添加此屏幕支持:

<screen
    android:screenDensity="560"
    android:screenSize="normal" />

参考。 :What is the right screen size and density configuration of Nexus 6?

【讨论】:

  • 我猜 Nexus 6 它的 screenSize="large" 并且应该接受它在 480 和 640 之间。为什么正常在 560 应该可以工作?谢谢!
  • 你的答案是正确的,它解决了这个问题,但它更像是一个黑客而不是一个解决方案。我已经更新了我的问题。
猜你喜欢
  • 2021-10-22
  • 2019-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-25
  • 2016-11-30
相关资源
最近更新 更多