Android 限制在平板电脑中安装应用程序
我有一个Android应用程序,我想停止在平板电脑上安装此应用程序。我搜索过很多网站。我有了一些想法并遵循了这一点。但这并不是限制 以下是我访问过的一些网站 我已经尝试了Android 限制在平板电脑中安装应用程序,android,android-screen-support,Android,Android Screen Support,我有一个Android应用程序,我想停止在平板电脑上安装此应用程序。我搜索过很多网站。我有了一些想法并遵循了这一点。但这并不是限制 以下是我访问过的一些网站 我已经尝试了支持屏幕应用程序仍在平板电脑中安装。如何做到这一点 注意:我的应用程序具有minsdkversion=8和targetsdkversion=17 编辑1:我使用以下代码查找屏幕大小 xlarge screens are at least 960dp x 720dp large screens are at least 640
支持屏幕
应用程序仍在平板电脑中安装。如何做到这一点
注意:我的应用程序具有minsdkversion=8和targetsdkversion=17
编辑1:我使用以下代码查找屏幕大小
xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp
WindowManager wm=getWindowManager();
DisplayMetrics dm=new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(dm);
deviceWidth=dm.widthPixels;
deviceHeight=dm.heightPixels;
if((deviceHeight< 640 && deviceWidth<480)|| (deviceHeight<480 && deviceWidth< 640))
{
//large screen - TABLET
}
xlarge屏幕至少为960dp x 720dp
大屏幕至少为640dp x 480dp
正常屏幕至少为470dp x 320dp
小屏幕至少为426dp x 320dp
WindowManager wm=getWindowManager();
DisplayMetrics dm=新的DisplayMetrics();
wm.getDefaultDisplay().getMetrics(dm);
deviceWidth=dm.widthPixels;
设备高度=dm.heightPixels;
如果((deviceHeight<640&&deviceWidth没有人真的想让你这么做,所以这可能有点棘手。你可以在Google Play的开发者控制台中禁用特定设备,但由于有数千台,这可能是一个很长的列表。不过,你可以使用控制台搜索Tab、pad、tablet和nexus 7,10,这可能会覆盖其中的大部分设备
另一个要考虑的选项实际上是将目标SDK设置为一个蜂巢级别。换句话说,注意它可能会损害你的应用程序的功能。
< P>一个快速而肮脏的方法是把你的清单添加到下面的行:
<uses-feature android:name="android.hardware.telephony" android:required="true" />
严格来说,这只是强制要求你的应用程序将安装在具有语音广播的设备上,实际上它将满足你的目的,因为几乎没有任何平板电脑具有电话功能。但一个值得注意的例外是三星Galaxy Note II,它是5.5版本“手机,所以从技术上讲,它介于手机和平板电脑的外形因素之间。请记住,谷歌Play发行版可能需要一段时间。
通过控制台上载新应用程序不会立即反映在您的设备上
这可能需要几个小时,可能会错过正确的解决方案
希望这有帮助。
Yaron我们可以通过两种方式安装android应用程序
adb安装命令
来自谷歌游戏商店
使用adb install命令,任何人都不能将应用程序安装仅限于平板电脑或手机。清单设置文件中的、等仅适用于Google Play store筛选器。我们可以通过在市场上传APK时查看所有应用程序>选择应用程序>APK>支持的设备|排除的设备。我的回答基于这样一个假设,即您希望阻止您的应用程序在平板电脑上安装。如果我误解了您的意思,则该回答对您无效。感谢您的回答。让我用this@Ponmalar“安装在平板电脑上”是什么意思“人们可以从谷歌Play商店在平板电脑上安装”或“我可以使用adb install
将其推送到我的平板电脑上”“?没有什么可以阻止后者。唯一能验证PackageManager
的是应用程序清单中的API级别。@Ponmalar关于您的EDIT1,在安装过程中没有运行的应用程序代码。您可以将此代码放在应用程序中。onCreate()
并阻止应用程序运行,但您不能阻止它使用代码安装。@Ponmalar该代码仅在运行时可用,因此与您的情况无关。EDIT2有什么问题吗?非常感谢。我在Airdroid上通过直接安装尝试了一个多小时的“受限应用程序”。