在最近的android开发过程中,需要实现编程卸载安装应用,由于我仅仅需要实现卸载普通用户级应用,所以不需要网上的一些获取系统权限的方法,限制很多而且不实用(主要表现在,获取系统应用权限方法麻烦,而且最终只能在个体手机上安装). 所以,我考虑能否调用系统卸载程序的功能,实现普通用户程序的卸载.
既然调用系统应用,肯定需要使用Intent, 很简单,接下来是最重要的参数,Intent.ACTION_DELETE.
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DELETE);
这样,这个intent就能跳转到卸载界面了,接下来是传入需要卸载的应用的包名,如下:
intent.setData(Uri.parse("package:com.dongyunlong.listactivity"));
完整的函数如下:
public void unInstall(View view){
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DELETE);
intent.setData(Uri.parse("package:com.dongyunlong.listactivity"));
startActivity(intent);
}
这样实现的方法,会有卸载界面,用户再次点击卸载完成功能,如果想要实现静默卸载,不通过系统功能,那就要获取系统权限了.