Android 下载完后自动安装app

2020-07-07  本文已影响0人  Gary同学

7.0以下版本

在app下载完成后可以直接使用下面的方法直接启动系统安装app

/**
  * 安装应用
  */
public void startInstall(Context context, String path) {
    Intent install = new Intent(Intent.ACTION_VIEW);
    install.setDataAndType(Uri.parse("file://" + path), "application/vnd.android.package-archive");
    install.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(install);
}

7.0以上版本

1、首先需要在manifest下面注册provider如下(这种写法这里是避免其他三方库的provider和自己的冲突,使用了replace)


1

2、在res下面建立一个xml,然后新建一个文件myfile


2

里面内容:(external-path path可以不用指定)


3

3、7.0的安装方法

/**
  * 7.0安装应用
  * @param context
  */
public void start7Install(Context context, String path) {
    //在AndroidManifest中的android:authorities值
    Uri apkUri = FileProvider.getUriForFile(context, getPackageName()+".provider", new File(path));

    Intent install = new Intent(Intent.ACTION_VIEW);
    install.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    install.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    install.setDataAndType(apkUri, "application/vnd.android.package-archive");

    startActivity(install);
}
上一篇下一篇

猜你喜欢

热点阅读