Android 8.0安装apk的实例代码
时间:2021-01-10 11:06:43|栏目:Android代码|点击: 次
android 8.0安装apk需要请求未知来源权限
//xml配置 <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/> /** * 检测版本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; } }
总结
上一篇:浅析Flutter AbsorbPointer 与 IgnorePointer的区别
栏 目:Android代码
下一篇:Android基于ImageView绘制的开关按钮效果示例
本文地址:http://www.codeinn.net/misctech/43233.html