1、概述
最近将以前的项目适配到android 9.0的时候,在9.0真机上运行,然后发现以前运行良好的卸载功能不能使用了,其实就是调用了以下方法没有任何的反应,也没有出现报错。
/**
* 卸载应用
*/
public static void uninstallPackage(Context context,String packageName) {
Intent intent = new Intent(Intent.ACTION_DELETE);
intent.setData(Uri.parse("package:" + packageName));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
2、解决方法
通过资料查找,原来是因为在android 9.0上卸载应用需要权限,于是我在AndroidManifest.xml中添加了<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES"/>
权限,然后运行项目,发现已经可以正常卸载应用了。出现此问题的原因是对Android 9.0新增的功能没有全部了解到,于是记录一下,希望对你们有所帮助!