随着android 系统的不断更新和发展,针对应用的权限管理也是越来越严格。这可是坑坏了我们这些搬砖的程序员,因为在一些上架平台,都一一宣布,以后的android应用 targetSdkVersion 必须最小为26,也就是说应用是android 8.0。将targetSdkVersion提升到26后,也随之出现了很多问题。今天只是来说一下,android 8.0下载自动安装时碰见的不自动安装的问题。
android 8.0以后有了一个权限叫安装未知应用或者是安装未知来源应用,如图:
如果想让应用自动安装下载的新版本apk,那么必须打开应用的这个权限,不然是不会自动安装的。打开方式
private void checkInstall(){
boolean haveInstallPermission;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
//先获取是否有安装未知来源应用的权限
haveInstallPermission = getPackageManager().canRequestPackageInstalls();
if (!haveInstallPermission) {//没有权限
AlertDialog alertDialog = new AlertDialog.Builder(this)
.setTitle("请