android 8.0安装apk需要请求未知来源权限

//xml配置

/**

* 检测版本8.0

*/

public void checkOreo() {

if (SdkVersionUtils.hasOreo()) {//8.0

//判断是否可以直接安装

boolean canInstall = getPackageManager().canRequestPackageInstalls();

if (canInstall) {

//rxpermissions请求权限

mRxPermissions

.request(Manifest.permission.REQUEST_INSTALL_PACKAGES)

.subscribe(granted -> {

if (granted) {

//安装apk

installApk();

} else if (shouldShowRequestPermissionRationale(Manifest.permission.REQUEST_INSTALL_PACKAGES)) {

//引导用户去打开权限

Intent intent = new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);

startActivityForResult(intent, GET_UNKNOWN_APP_SOURCES);

} else {

Intent intent = new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);

startActivityForResult(intent, GET_UNKNOWN_APP_SOURCES);

}

});

} else {

//安装apk

installApk();

}

} else {

//安装apk

installApk()

}

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

switch (requestCode) {

case GET_UNKNOWN_APP_SOURCES:

checkOreo();

break;

}

}

总结

以上所述是小编给大家介绍的Android 8.0安装apk的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐