我的应用并未将Nexus 6列为Google Play控制台中支持的设备。
我阅读了帖子Getting Your Apps Ready for Nexus 6 and Nexus 9,其中写道:
Nexus 6的量子化密度 560 dpi ,介于两者之间 xxhdpi和xxxhdpi主密度桶。
关于我的问题有一个段落:
确保您未在Google Play上过滤
如果您正在使用 你在AndroidManifest.xml文件中的元素 应该停止使用它,因为它不可扩展以重新编译和 每次新设备发布时都会发布您的应用。但是,如果必须的话 使用它,确保更新清单以添加配置 这些设备(按屏幕尺寸和密度)。否则您的应用可能是 从这些设备上的Google Play搜索结果中排除。
好吧,我必须使用<compatible-screens>
,因为我试图将我的应用从平板电脑中排除。
我在Manifest中的当前<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>
Nexus 6的正确配置是什么?
我试过了:
<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" />
但似乎没有一个可以解决问题。
答案 0 :(得分:6)
我询问了Google Play支持并得到了一个帮助我解决问题的答案。
仍然没有100%确定正确的屏幕配置,但似乎
<screen
android:screenDensity="560"
android:screenSize="normal" />
是正确的选择。
我的应用程序与Nexus 6不兼容,但由于我的应用程序的清单中存在冲突。我使用了以下功能要求:
<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" />
应以大写字母列出,但功能(在<uses-feature>
中)应为小写。
我还没有在任何其他设备上遇到同样的问题,但如果Nexus 6要求这样做,那么它可能是正确的做法。