我的应用程序没有将Nexus6列为Google Play控制台中受支持的设备。
我读了一篇博文,上面写着:
Nexus6的量化密度为560dpi,介于
XXHDPI和XXXHDPI主密度桶。
有一段关于我的问题:
确保你没有被google play过滤
如果您正在使用
元素在androidmanifest.xml文件中,
应该停止使用它,因为它无法重新编译和
每次新设备出现时发布你的应用程序。但是,如果你必须
使用它,确保更新清单以添加
这些设备(按屏幕大小和密度)。否则你的应用程序可能
不包括在这些设备上的google play搜索结果中。
好吧,我必须使用<compatible-screens>,因为我正试图从平板电脑中排除我的应用程序。
清单中当前的<compatible-screens>元素如下所示:

<compatible-screens>
    <!-- small size screens -->
    <screen
        android:screenDensity="ldpi"
        android:screenSize="small" />
    <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" />

    <!-- normal size screens -->
    <screen
        android:screenDensity="ldpi"
        android:screenSize="normal" />
    <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" />
</compatible-screens>

Nexus6的正确配置是什么?
我试过:
    <screen
        android:screenDensity="560"
        android:screenSize="normal" />
    <screen
        android:screenDensity="480"
        android:screenSize="large" />
    <screen
        android:screenDensity="560"
        android:screenSize="large" />
    <screen
        android:screenDensity="640"
        android:screenSize="large" />

但这一切似乎都没起到作用。

最佳答案

我问了google play的支持,得到了一个帮助我解决问题的答案。
仍然不能百分之百确定正确的屏幕配置,但是看起来

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

是正确的选择。
但是,由于应用程序清单中的冲突,我的应用程序与Nexus6不兼容。我使用了以下功能要求:
<uses-feature android:name="android.hardware.LOCATION" />
<uses-feature android:name="android.hardware.TELEPHONY" />
<uses-feature android:name="android.hardware.TOUCHSCREEN" />
<uses-feature android:name="android.hardware.WIFI" />
<uses-feature android:name="android.hardware.location.GPS" />
<uses-feature android:name="android.hardware.location.NETWORK" />
<uses-feature android:name="android.hardware.screen.PORTRAIT" />

但正确的版本是以所有小写字母列出的功能:
<uses-feature android:name="android.hardware.location" />
<uses-feature android:name="android.hardware.telephony" />
<uses-feature android:name="android.hardware.touchscreen" />
<uses-feature android:name="android.hardware.wifi" />
<uses-feature android:name="android.hardware.location.gps" />
<uses-feature android:name="android.hardware.location.network" />
<uses-feature android:name="android.hardware.screen.portrait" />

这有点棘手,因为权限(在<uses-permission>中)像
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

应以大写字母列出,但feature(in<uses-feature>)应为小写。
我在其他任何设备上都没有遇到过同样的问题,但是如果Nexus6需要这样做,这可能是正确的方法。

08-04 08:00