Android O以后安装第三方app的方式

首先,在AndroidManifest.xml写权限

    
    

然后在application包围里面写

        
        
            
        

然后在res目录新建xml目录,在xml目录新建file_paths.xml文件,文件中写入



    
    

以上就是获取访问Uri权限的内容
下面开始在Java中使用代码来动态申请安装app权限以及安装指定安装包

//判断有没有权限
boolean hasins = getPackageManager().canRequestPackageInstalls();
//如果没有就写跳转申请界面,这个是8.0新API
Uri packageURI = Uri.parse("package:" + getPackageName());
Intent intent10086 = new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES, packageURI);
startActivityForResult(intent10086, 10086);
//如果有权限,就直接安装
Intent intent = new Intent(Intent.ACTION_VIEW);
//判断是否是AndroidN以及更高的版本
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
  intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
  Uri contentUri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".fileProvider", new File("安装包路径"));
  intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
} else {
  intent.setDataAndType(Uri.fromFile(new File("安装包路径")), "application/vnd.android.package-archive");
  intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
startActivity(intent);

你可能感兴趣的:(Android O以后安装第三方app的方式)