首先安装apk分3个android版本的校验,版本>=8.0的,版本>=7.0,以及<7.0的,上代码:
private void installAPK(File newApkFile) {
Intent intent = new Intent(Intent.ACTION_VIEW);
if (null != newApkFile) {
try {
//兼容7.0
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Uri contentUri = FileProvider.getUriForFile(SettingActivity.this, SettingActivity.this.getPackageName() + ".provider", newApkFile);
intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
//兼容8.0
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
boolean hasInstallPermission = SettingActivity.this.getPackageManager().canRequestPackageInstalls();
if (!hasInst