Android:禁止在平板电脑上安装应用程序

Android: Disable to install app on tablets

我正在开发只能安装在手机上而不是平板电脑上的应用程序。

请问,如何限制只能安装在手机上?

我正在阅读这篇文章,但对我来说它似乎很老: Distributing to Specific Screens

他们根本不是在谈论 xxhdpi 或 xxxhdpi 分辨率,设备是按屏幕尺寸划分的。几年前还可以,现在呢?例如 Nexus 6 有 6" 屏幕尺寸 - 它可以被认为几乎像平板电脑。

你知道任何可行的解决方案吗?

如果我们使用 adb install 命令来安装应用程序,则无法将应用程序安装限制在平板电脑或手机上。 此外,如果我们在 menifest 中提供标签,它仅适用于 Google Play 商店过滤器,要检查这一点,您可以尝试使用以下代码,将其放入您的 menifest 并尝试将其安装在 7 英寸平板电脑中,它将允许,

<supports-screens
        android:largeScreens="false"
        android:largestWidthLimitDp="600"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="false" />

通过使用此代码 Google 仅在安装时播放商店过滤器和限制,但在共享 apk 或在模拟器中安装的其他情况下不会。

因此,要在市场上上传 APK 时限制应用安装到特定设备,您需要执行此操作 应用程序->select您的应用程序->APK->支持的设备|排除的设备

只要按照文档Declaring an App is Only for Handsets and do not use the example from the accepted answer because of: (from FilteringTabletApps)

Caution: If you use the element for the reverse scenario (when your application is not compatible with larger screens) and set the larger screen size attributes to "false", then external services such as Google Play do not apply filtering. Your application will still be available to larger screens, but when it runs, it will not resize to fit the screen. Instead, the system will emulate a handset screen size (about 320dp x 480dp; see Screen Compatibility Mode for more information). If you want to prevent your application from being downloaded on larger screens, use , as discussed in the previous section about Declaring an App is Only for Handsets.