1.手机版本更新时 适配5.0 6.0 7.0 因为6.0以后Android安装apk api 变化 downloadmanager 下载完成之后 获取apk 的uri 6.0以上安装方法改变 需要进行兼容
兼容方法 :
public static void installApk(Context context, Uri apkPath) {
File apkFile =
new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS),"member.apk");
Intent intent =new Intent(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
Uri apkUri = FileProvider.getUriForFile(context,"com.nucarf.member.fileprovider", apkFile);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.setDataAndType(apkUri,"application/vnd.android.package-archive");
}else {
Uri uri = Uri.parse("file://" + apkFile);
intent.setDataAndType(uri,"application/vnd.android.package-archive");
}
context.startActivity(intent);
}
2. apk 升级时候 versionCode versionName 必须修改升级
小米,oppo,vivo后台在做应用更新时是必须增大版本号:version code值。 请您确认提交的版本的版本号(version code)要大于线上目前的应用的。 亲测得知 version code必须不小于之前版本的version code值 ,如果小于会报安装失败
结语:仅此记录版本更新的细节