我正在开发的应用程序在Google Play中无法从Nexus 5x中看到.由于它不支持平板电脑,<compatible-screens>清单中有一个部分(如文档中所示):
<compatible-screens>
<!-- all small size screens -->
<screen android:screenSize="small" android:screenDensity="ldpi" />
<screen android:screenSize="small" android:screenDensity="mdpi" />
<screen android:screenSize="small" android:screenDensity="hdpi" />
<screen android:screenSize="small" android:screenDensity="xhdpi" />
<!-- all normal size screens -->
<screen android:screenSize="normal" android:screenDensity="ldpi" />
<screen android:screenSize="normal" android:screenDensity="mdpi" />
<screen android:screenSize="normal" android:screenDensity="hdpi" />
<screen android:screenSize="normal" android:screenDensity="xhdpi" />
<!-- XXHdpi Screen -->
<screen android:screenSize="normal" android:screenDensity="480" />
<!-- XXXHdpi Screen -->
<screen android:screenSize="normal" android:screenDensity="560" />
<screen android:screenSize="normal" android:screenDensity="640" />
</compatible-screens>
Run Code Online (Sandbox Code Playgroud)
但是<supports-screens>由于这个原因我不能使用(我需要从平板电脑中完全过滤掉这个应用程序):
警告:如果您将该
<supports-screens> …
将<compatible-screens>块添加到 AndroidManifest.xml 后,一些设备变得不兼容。例如 Pixel 3 和 Pixel 3a。两者都有一个密度屏幕 440 DPI。但是,Google 的所有其他设备都兼容。问题是我需要支持有限的设备集(UI 不适合平板电脑或低分辨率设备)。
我的想法是这些设备可能属于
<screen android:screenSize="normal" android:screenDensity="420" />
<screen android:screenSize="normal" android:screenDensity="480" />
Run Code Online (Sandbox Code Playgroud)
或者
<screen android:screenSize="large" android:screenDensity="420" />
<screen android:screenSize="large" android:screenDensity="480" />
Run Code Online (Sandbox Code Playgroud)
桶。
设置android:screenDensity="440"不起作用。Google Play 禁止上传具有这种屏幕密度的 apk。
这是上面提到的完整代码块
<compatible-screens>
<screen android:screenSize="normal" android:screenDensity="xhdpi" />
<screen android:screenSize="normal" android:screenDensity="xxhdpi" />
<screen android:screenSize="normal" android:screenDensity="xxxhdpi" />
<screen android:screenSize="normal" android:screenDensity="420" />
<screen android:screenSize="normal" android:screenDensity="480" />
<screen android:screenSize="normal" android:screenDensity="560" />
<screen android:screenSize="normal" android:screenDensity="640" />
<screen android:screenSize="large" android:screenDensity="xhdpi" />
<screen android:screenSize="large" android:screenDensity="xxhdpi" />
<screen android:screenSize="large" android:screenDensity="xxxhdpi" …Run Code Online (Sandbox Code Playgroud)