下载apk安装包后,调用安装器自动安装apk(适配7.0)
在更新操作时,下载新apk之后,往往需要自动安装新apk,用以下代码即可安装下载在本地的apk文件(apkFile)
Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive"); startActivity(intent);
对于7.0之后,应用间共享文件,需要使用 content://
URI,并授予 URI 临时访问权限,而不再支持file://
URI,否则会抛出异常
Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); Uri apkUri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".provider", apkFile); intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); startActivity(intent);
对于FileProvider的配置,参考
Android 7.0下,拍摄照片报错