我有一个Android应用程序,我只限于手机。我使用以下代码仅允许手机从Google Play下载应用
<!-- Only permit app to be used on handsets, prevent tablets -->
<compatible-screens>
<!-- all 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" />
<!-- all 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" />
<!-- LG G3 QHD Resolution -->
<screen android:screenDensity="640" android:screenSize="small" />
<screen android:screenDensity="640" android:screenSize="normal" />
<screen android:screenDensity="640" android:screenSize="large" />
<screen android:screenDensity="640" android:screenSize="xlarge" />
</compatible-screens>
今天,有用户报告Google Play告诉他们他们的设备与该应用不兼容。他们正在使用运行Android 6.0 Marshmallow的Verizon Wireless Huawei Nexus 6P。
我猜我需要在清单的节点上添加更多内容以支持此设备,但我不确定screenDensity的用途。如何通过我的应用程序支持此设备?
当我在Android Studio中为这个确切的设备创建一个模拟器时,该应用程序可以完美地运行它。
答案 0 :(得分:1)
将此添加到屏幕尺寸
<screen
android:screenDensity="560"
android:screenSize="normal" />
它有望解决您的问题
答案 1 :(得分:0)
这并不是OP问题的答案,但是我的一个应用程序也存在完全相同的问题,没有使用任何兼容屏幕的限制。因此,这可能对具有相同问题的其他人很重要
必须添加它才能覆盖包括Nexus 6P在内的其他178台设备。我认为6P并非真正需要所有它们,很可能anyDensity应该足够了:
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
仅支持电话,我想这应该足够了:
<supports-screens
android:anyDensity="true"
android:normalScreens="true"
android:smallScreens="true" />