安装某个app
/**
* @param context 上下文
* @param apkFile 需要安装的app的file对象
*/
public static void installApp(Context context, File apkFile){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");
context.startActivity(intent);
}
卸载某个app
/**
* @param appPackageName 需要卸载的app的包名
*/
public void uninstall(String appPackageName){
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DELETE);
intent.setData(Uri.parse("package:" + appPackageName));
startActivityForResult(intent, 0);
}
启动某个app
/**
* @param appPackageName 需要启动的app的包名
*/
private void launch(String appPackageName) {
PackageManager pm = getPackageManager();
//启动页面的intent
Intent intent = pm.getLaunchIntentForPackage(appPackageName);
if (intent != null) {
startActivity(intent);
}else{
Toast.makeText(this, "找不到启动页面", Toast.LENGTH_SHORT).show();
}
}