Android XML,如何让应用只兼容手机和平板?
Android XML, how to make app compatible only for phones and tablets?
我需要让我的应用程序仅兼容 phone 和平板电脑(特别是所有 phone 和平板电脑),我知道我必须在清单文件中声明这一点但不起作用.
这是我的尝试:
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="false" />
<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" />
<screen android:screenSize="small" android:screenDensity="xxhdpi" />
<screen android:screenSize="small" android:screenDensity="xxxhdpi" />
<!-- 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" />
<screen android:screenSize="normal" android:screenDensity="xxhdpi" />
<screen android:screenSize="normal" android:screenDensity="xxxhdpi" />
<!-- all large size screens -->
<screen android:screenSize="large" android:screenDensity="ldpi" />
<screen android:screenSize="large" android:screenDensity="mdpi" />
<screen android:screenSize="large" android:screenDensity="hdpi" />
<screen android:screenSize="large" android:screenDensity="xhdpi" />
<screen android:screenSize="large" android:screenDensity="xxhdpi" />
<screen android:screenSize="large" android:screenDensity="xxxhdpi" />
</compatible-screens>
通过对清单进行此修改,该应用仅与 phone 和平板电脑兼容,但并非与所有平板电脑兼容。我怎样才能使应用程序与所有这些兼容?谢谢
删除所有这些。这些字段用于当您想要删除某些屏幕时 sizes/types。例如,如果您只想在小屏幕上工作。如果你想处理所有事情,你根本就不要放任何东西——一切都是默认的。
现在在 Play 商店中,您可能仍然会看到一些您无法使用的设备。这主要是由于您支持的 sdk 版本,这是预期的。或清单中的任何 require-feature 标志(仅当您绝对需要该功能时才应存在)。
为了使该应用仅与手机和平板电脑兼容(并且 运行 它处于纵向模式),我的解决方案是在我的 Manifest.xml 文件中添加以下行:
<uses-feature android:required="true" android:name="android.hardware.camera"/>
<uses-feature android:required="true" android:name="android.hardware.camera.flash"/>
<uses-feature android:required="true" android:name="android.hardware.touchscreen" />
<uses-feature android:required="true" android:name="android.hardware.screen.portrait" />
<supports-screens
android:smallScreens="false"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="false" />
我需要让我的应用程序仅兼容 phone 和平板电脑(特别是所有 phone 和平板电脑),我知道我必须在清单文件中声明这一点但不起作用.
这是我的尝试:
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="false" />
<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" />
<screen android:screenSize="small" android:screenDensity="xxhdpi" />
<screen android:screenSize="small" android:screenDensity="xxxhdpi" />
<!-- 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" />
<screen android:screenSize="normal" android:screenDensity="xxhdpi" />
<screen android:screenSize="normal" android:screenDensity="xxxhdpi" />
<!-- all large size screens -->
<screen android:screenSize="large" android:screenDensity="ldpi" />
<screen android:screenSize="large" android:screenDensity="mdpi" />
<screen android:screenSize="large" android:screenDensity="hdpi" />
<screen android:screenSize="large" android:screenDensity="xhdpi" />
<screen android:screenSize="large" android:screenDensity="xxhdpi" />
<screen android:screenSize="large" android:screenDensity="xxxhdpi" />
</compatible-screens>
通过对清单进行此修改,该应用仅与 phone 和平板电脑兼容,但并非与所有平板电脑兼容。我怎样才能使应用程序与所有这些兼容?谢谢
删除所有这些。这些字段用于当您想要删除某些屏幕时 sizes/types。例如,如果您只想在小屏幕上工作。如果你想处理所有事情,你根本就不要放任何东西——一切都是默认的。
现在在 Play 商店中,您可能仍然会看到一些您无法使用的设备。这主要是由于您支持的 sdk 版本,这是预期的。或清单中的任何 require-feature 标志(仅当您绝对需要该功能时才应存在)。
为了使该应用仅与手机和平板电脑兼容(并且 运行 它处于纵向模式),我的解决方案是在我的 Manifest.xml 文件中添加以下行:
<uses-feature android:required="true" android:name="android.hardware.camera"/>
<uses-feature android:required="true" android:name="android.hardware.camera.flash"/>
<uses-feature android:required="true" android:name="android.hardware.touchscreen" />
<uses-feature android:required="true" android:name="android.hardware.screen.portrait" />
<supports-screens
android:smallScreens="false"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="false" />