android - 以编程方式为所有用户卸载 APK
问题描述
要卸载应用程序,我从 stackoverflow 获得了解决方案,但我需要从所有用户中卸载 apk
此代码将仅为当前用户卸载,但如果用户是管理员或主要用户,我需要为所有用户执行卸载。怎么做?
Intent intent = new Intent(Intent.ACTION_DELETE);
intent.setData(Uri.parse("package:com.example.mypackage"));
startActivity(intent);
以上代码以编程方式从安装/卸载 APK 复制(PackageManager vs Intents)
注意:这不是重复的问题
解决方案
final Uri packageURI = Uri.parse("package:" + "package:com.example.mypackage");
final Intent uninstallIntent = new Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageURI);
uninstallIntent.putExtra("android.intent.extra.UNINSTALL_ALL_USERS", false or true);
startActivity(uninstallIntent);
您可以从我参考的地方查看这个答案 -是否有为所有用户卸载应用程序的意图?
多用户是什么意思?
如果您有一台二手笔记本电脑或机器,那么您可能已经熟悉这里的概念:您可以在其中创建具有不同角色的多个帐户。这就像将多台机器打包成一台。
Android 有一个非常相似的内置功能,称为用户配置文件。它将创建一个单独的配置文件,可以在其中进行更改并保留多个设置。但是是的,当用户安装应用程序时,它将自动安装在所有配置文件中,因此最终用户需要在不需要的配置文件中手动卸载它。
我尝试在我的设备中使用它,但添加多个配置文件后性能有点慢。
推荐阅读
- asp.net - 如何解决 IIS 中的访问限制错误
- node.js - 查询 mongoose 中的填充字段
- r - 逐行拟合回归模型
- php - 如何动态前往标题描述?
- angular - 如何更改 Datepicker 语言 (NG-ZORRO) - Angular
- javascript - AJAX Post 调用无数据
- azure-web-app-service - 从 Azure Bot App Service Console 运行 Bot Framework Orchestrator 命令时出现问题
- laravel - laravel 分页,我使用 paginate 不是 simplepaginate 但输出是 simplepaginate
- java - SAML EncryptedAssertion 解密失败 - 解密加密密钥时出错
- r - 如何从 R 中的嵌套 for 循环创建向量?