最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Android 8.0安装apk的实例代码
时间:2018-03-21 编辑:猪哥 来源:一聚教程网
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; } }
相关文章
- kotlin gson反序列化默认值失效深入讲解 12-28
- Android使用Volley框架定制PostUploadRequest上传文件 12-26
- Android使用Volley实现上传文件功能 12-26
- Android自定义控件仿iOS滑块SwitchButton 12-26
- Android自定义控件实现带数值和动画的圆形进度条 12-25
- Android自定义控件实现折线图 12-25