获取所有安装了的软件包:
List<PackageInfo> installedPackages = pm.getInstalledPackage(0);//pm是PackageManager包管理器
for(PackageInfo info : installedPackages){//循环每个apk的信息
AppBean bean = new AppBean();
bean.setName(info.applicationInfo.loadLabel(pm)+"");//应用程序的名字
bean.setIcon(info.applicationInfo.loadIcon(pm));//应用程序的图标
bean.setPackageName(info.packageName);//包名
bean.setPath(info.applicationInfo.sourceDir);//包的路径
}
卸载用户软件
Intent intent = new Intent();
intent.setAction("android.intent.action.DELETE");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse("package:"+clickBean.getPackageName()));//clickBean.getPackageName()指包名
startActivity(intent);
卸载系统软件
try {
if(!RootTools.isRootAvailable()){
Toast.makeText(getApplicationContext(), "没有root权限", 0).show();
return ;
}
if(!RootTools.isAccessGiven()){
Toast.makeText(getApplicationContext(), "请给我root权限", 0).show();
return ;
}
//Toast.makeText(getApplicationContext(), "正在卸载系统软件", 0).show();
RootTools.sendShell("mount -o remount rw/system", 30000);//获取到读写权限
RootTools.sendShell("rm -r "+clickBean.getPath(), 30000);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//注意!这里用到了RootTools.jar包
启动软件:
public void launcher(){
Intent intent = pm.getLaunchIntentForPackage(clickBean.getPackageName());//clickBean.getPackageName()是要启动的包名
startActivity(intent);
}
设置软件:
public void setting(){
Intent intent = new Intent();
intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
intent.setData(Uri.parse("package:"+clickBean.getPackageName()));//clickBean.getPackageName()是包名
startActivity(intent);
}
分享
public void share(){
Intent intent = new Intent();
intent.setAction("android.intent.action.SEND");
intent.addCategory("android.intent.category.DEFAULT");
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, "please download");
startActivity(intent);
}
发短信
public void sendMessage(){
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_SENDTO);
intent.setData(Uri.parse("smsto:10086"));
intent.putExtra("sms_body", "test");
startActivity(intent);
}