Intent intent = new Intent();
//执行动作
intent.setAction(Intent.ACTION_VIEW);
//执行完打开应用
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//执行的数据类型
//编者按:此处Android应为android,否则造成安装不了
intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
context.startActivity(intent);
android.os.Process.killProcess(android.os.Process.myPid());
如果没有android.os.Process.killProcess(android.os.Process.myPid());最后不会提示完成、打开。
// 通过Intent安装APK文件
Intent i = new Intent(Intent.ACTION_VIEW);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setDataAndType(Uri.parse("file://" + apkfile.toString()),
"application/vnd.android.package-archive");
mContext.startActivity(i);
android.os.Process.killProcess(android.os.Process.myPid());
}
如果没有android.os.Process.killProcess(android.os.Process.myPid());最后不会提示完成、打开。
如果没有i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);这一步的话,最后安装好了,点打开,是不会打开新版本应用的。