7.0以下版本
在app下載完成后可以直接使用下面的方法直接啟動系統(tǒng)安裝app
/**
* 安裝應(yīng)用
*/
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)
2川尖、在res下面建立一個xml,然后新建一個文件myfile
里面內(nèi)容:(external-path ?path可以不用指定)
3惠勒、7.0的安裝方法
/**
* 7.0安裝應(yīng)用
* @param context
*/
public void start7Install(Context context, String path) {
? ? Uri apkUri = FileProvider.getUriForFile(context, getPackageName()+".provider", new File(path));//在AndroidManifest中的android:authorities值
? ? 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);
}