【问题标题】:Uninstall an Application from android withour user promt or Interaction在没有用户提示或交互的情况下从 android 卸载应用程序
【发布时间】:2012-08-30 00:41:12
【问题描述】:

最近我正在开发一个移动设备管理应用程序,因为我实施了一个从设备远程删除应用程序的案例,但问题是用户必须单击卸载按钮才能继续。但我认为如果我们正在管理设备它不应该,而且用户肯定不会点击卸载按钮。

那么有什么方法可以让我们在没有用户提示的情况下删除应用程序,或者我们可以在调用活动时自动单击卸载按钮。

Intent uninstallIntent = new Intent(Intent.ACTION_DELETE);
            uninstallIntent.setData(Uri.parse("package:" + packageName));
            uninstallIntent.setAction(Intent.ACTION_VIEW); 
            uninstallIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
            context.startActivity(uninstallIntent);

我正在使用此代码调用卸载活动。

【问题讨论】:

  • 我认为这是不可能的,以避免恶意软件在用户不注意的情况下删除应用程序
  • @MaxRasguido 预期的答案。
  • 顺便说一下我的回答更具体一点
  • @MaxRasguido 我也在研究同样的问题,并得到了一个信息,在三星设备中使用三星 sdk 是可能的。如果是这样,我们该怎么做。我在哪里可以找到 sdk 和代码。
  • @MaxRasguido 但是像Mass360这样的供应商正在提供选择性擦除功能而没有任何用户提示。如果根本不可能他们怎么办???

标签: android android-intent


【解决方案1】:

据我所知,在没有用户许可提示的情况下无法安装卸载包,更多技术答案请参考以下来源:Third Party Uninstalling - 这表明安装卸载包的唯一方法是询问 Android 操作系统为你做这件事,Intent or Package Manager install - 这表明有一种特殊的方法来安装/卸载软件包,但它只能由系统应用程序使用。

因此,安装和卸载软件包的唯一明显方式是 Intent,并且此 Intent 将始终显示安装卸载软件包的提示。

【讨论】:

  • 我已经浏览了所有这些链接,但没有得到任何解决方案。我认为android应该在DeviceAdmin中提供这个功能。
  • 这很有用,但风险很大,如果您可以在没有权限提示的情况下卸载应用程序,您将能够卸载用户不想卸载的应用程序,那就是一个相当大的安全漏洞
  • 这就是为什么我说这应该在 DeviceAdmin 中,以便通过激活该用户将授予应用程序在未经他们确认的情况下卸载应用程序的权限。
猜你喜欢
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-17
相关资源
最近更新 更多