Say*_*nRC 3 android android-intent
在android pie上,我想调用包管理器来卸载我自己的应用程序。这是我正在尝试的:
val uri = Uri.parse("package:$packageName")
val uIntent = Intent(Intent.ACTION_UNINSTALL_PACKAGE, uri)
startActivity(uIntent)
Run Code Online (Sandbox Code Playgroud)
奇怪的是,这不起作用。logcat 中也没有显示任何内容。
我也试过 ACTION_DELETE
val uri = Uri.parse("package:$packageName")
val uIntent = Intent(Intent.ACTION_DELETE, uri)
startActivity(uIntent)
Run Code Online (Sandbox Code Playgroud)
请告诉我我做错了什么。这似乎是一项非常简单的工作。我是否缺少任何许可或需要在清单中声明的内容?谢谢。
我缺少清单许可。
<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES"/>
Run Code Online (Sandbox Code Playgroud)
这可能是 Android 6.0 及更高版本所必需的。问题中的代码现在可以完美运行。在 Android 9 和 Android 10 上测试。