我正在处理应该只安装在手机而非平板电脑上的应用。
我想问一下,如何限制只在手机上安装?
我正在读这篇文章,但对我来说似乎很老了: Distributing to Specific Screens
他们根本不是在讨论xxhdpi或xxxhdpi分辨率,而是根据屏幕尺寸划分设备。几年前它可以工作,但现在呢?例如,Nexus 6有6"屏幕尺寸 - 它可以被认为几乎像平板电脑。
您知道任何有效的解决方案吗?
答案 0 :(得分:5)
只需按照文档Declaring an App is Only for Handsets操作,不要使用接受答案中的示例,因为:(来自FilteringTabletApps)
警告:如果您将该元素用于反向场景(当您的应用程序与较大的屏幕不兼容时)并将较大的屏幕尺寸属性设置为" false",那么外部服务(如Google Play)会不适用过滤。您的应用程序仍可用于更大的屏幕,但在运行时,它不会调整大小以适应屏幕。相反,系统将模拟手机屏幕大小(约320dp x 480dp;有关详细信息,请参阅屏幕兼容模式)。如果您想阻止您的应用程序在较大的屏幕上下载,请使用,如上一节中有关声明应用程序仅适用于手机的讨论。
答案 1 :(得分:4)
如果我们使用adb install命令安装应用程序,则无法将应用程序安装仅限于平板电脑或手机。 此外,如果我们在清单中提供标签,它仅适用于Google Play商店过滤器,要检查这一点,您可以尝试使用以下代码,将其放入您的清单并尝试将其安装在7英寸平板电脑中,它将允许,
<supports-screens
android:largeScreens="false"
android:largestWidthLimitDp="600"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="false" />
通过使用此代码,Google Play商店会在安装时过滤和限制,但在其他情况下不会作为共享apk或在模拟器中安装。
因此,要在市场上传APK时限制应用安装到某些设备,您需要这样做 应用 - >选择您的应用 - &gt; APK-&gt;支持的设备|排除的设备