如何以编程方式禁用没有root的应用程序?

时间:2016-04-21 09:15:36

标签: android samsung-mobile android-package-managers

我刚发现一个允许在没有root的情况下禁用三星应用的应用,并且在后台:

https://play.google.com/store/apps/details?id=com.hecorat.packagedisabler

还有这个免费的:

https://play.google.com/store/apps/details?id=com.ospolice.packagedisabler

  1. 怎么会这样?它甚至不显示系统类型的alertDialog来询问用户是否可以禁用该应用程序。他们是否发现允许这样做的缺陷?

  2. 仅适用于部分三星应用吗?其他应用程序和其他公司怎么样?那也有可能吗?

  3. 是否可以将相同的机制用于其他操作?就像启用应用程序一样?

  4. 我目前没有三星设备,所以我甚至无法查看此应用。

2 个答案:

答案 0 :(得分:1)

您可以隐藏或取消隐藏应用,只要您使用DevicePolicyManager的api setApplicationHidden将应用设备作为设备所有者

答案 1 :(得分:0)

您的应用需要是设备的设备所有者。要成为设备所有者,您需要执行NFC配置或adb命令shell。您可以在Florent here找到一篇写得很好的博客。

但是,从Android Marshmallow开始,有一种新方法可让您的应用成为设备所有者。虽然有很多限制。您必须是EMM提供商,并且您的客户必须拥有Google商家或edu许可才能实现此目的。

Google Play商店中没有允许您的应用成为设备管理员的应用程序。作为设备所有者,您可以在设备上控制很多内容,因此,我认为Google可能不希望在没有适当安全措施的情况下提供此类控制。

关于三星设备,他们提供了他们的knox sdk,如此处提及的其他答案,可让您访问Android库存不允许的某些API。