问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

安卓7.0安装的软件为什么安装不了8.0版本上

发布网友 发布时间:2022-12-21 04:17

我来回答

1个回答

热心网友 时间:2023-07-10 19:31

Android 7.0 上安装apk android.os.FileUriExposedException问题如果你的系统版本是 8.0+,那你需要多加一个权限,否则无法跳转到安装页 sssss

如果安装报错,可能是临时文件访问路径没有配置,或者百度上找到的安装代码是旧版本的,7.0以后不在支持,文章最下面有适配的代码。android.os.FileUriExposedException: file:///storage/emulated/0/trgis/1511427343635.apk exposed beyond app through Intent.getData()

今天做自动更新的时候,自己下载好的apk安装包调用系统的安装服务就报错,很是郁闷,因为之前的代码是好着的,后来查了下资料,原来是Android N 7.0版本之后不支持之前的写法了,好了直接上解决方案。

1.在AndroidManifest.xml application标签中添加如下代码

android:name="android.support.v4.content.FileProvider"

android:authorities="你的包名.fileProvider"

android:grantUriPermissions="true"

android:exported="false">

android:name="android.support.FILE_PROVIDER_PATHS"

android:resource="@xml/file_paths" />

注意authorities:你app的包名.fileProvider

grantUriPermissions:必须是true,表示授予 URI 临时访问权限

exported:必须是false

resource:中的@xml/file_paths是我们接下来要添加的文件

2.在res/xml下新建file_paths.xml<?xml version="1.0" encoding="utf-8"?>

name="files_root"

path="" />

注意path:需要临时授权访问的路径(.代表所有路径)

name:就是你给这个访问路径起个名字

3.适配AndroidN以前我们直接 Uri.fromFile(apkFile)构建出一个Uri,现在我们使用

FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + “.fileProvider”, apkFile);

BuildConfig.APPLICATION_ID直接是应用的包名Intent intent = new Intent(Intent.ACTION_VIEW);

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {

/* Android N 写法*/

intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

Uri contentUri = FileProvider.getUriForFile(MainActivity.this, BuildConfig.APPLICATION_ID + ".fileProvider", new File("apk地址"));

intent.setDataAndType(contentUri, "application/vnd.android.package-archive");

} else {

/* Android N之前的老版本写法*/

intent.setDataAndType(Uri.fromFile(new File("apk地址")), "application/vnd.android.package-archive");

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

}

startActivity(intent);

关注

如果有问题,请在下方评论,或者加群讨论 200909980

关注下方微信公众号,可以及时获取到各种技术的干货哦,如果你有想推荐的帖子,也可以联系我们的。

打开CSDN,阅读体验更佳
在电视终端上安装apk提示(INSTALL_FAILED_INVALID_URI)
在android盒子上插入U盘,出现了 /storage/6C32-2486的目录,这就是U盘的目录 然后命令行运行 pm install -r 6C32-2486/my.apk 报错:INSTALL_FAILED_INVALID_URI , 上网查了一下,有说是要打签名,其实签名已打好的 *是要输入完整路径: pm install -r /storage/6C32-2486/my.a...
继续访问
Android 8.0 解决不能自动安装APK问题(完美适配)
Android8.0之前 未知应用安装权限默认开启,如下图所示 Android8.0之后 未知应用安装权限默认关闭,且权限入口隐藏。 如何开启未知应用安装权限的入口,并设置允许安装? 1.在清单文件中添加权限 <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>...
继续访问
关于Android8.0安装apk不自动安装问题
每次android推出新系统,就不可避免的带出来一些坑!造成此问题的因素有多种: 1.android本身开源,国内手机开发厂商众多,深度定制系统的不是一家两家,导致碎片化严重。 2.app竞争日趋白热化,公司要求的是速度,以至于996类型的公司随处可见,对质量却没有很好的把关 3.公司产品经理并不会考虑你app的健壮性和可持续性,他们要的是功能,美观,流程。 4.经常拿android和io
继续访问
热门推荐 Android 8.0安装apk
前一段时间在做App版本更新时,使用Android 8.0的手机测试发现一个问题:安装包下载完成之后,屏幕闪了一下并没有跳转到安装界面,使用8.0以下的手机并没有这个问题。 Android 8.0 Oreo 中,Google 移除掉了容易被滥用的“允许位置来源”应用的开关,在安装 Play Store 之外的第三方来源的 Android 应用的时候,竟然没有了“允许未知来源”的检查框,如果你还是
继续访问
Android8.0 安装apk
/** * 判断是否是8.0,8.0需要处理未知应用来源权限问题,否则直接安装 */ private void checkIsAndroidO() { if (Build.VERSION.SDK_INT >= 26) { boolean b = getPackageManager().canRequestPackageInstalls(); if...
继续访问
安装android到u盘安装程序,在u盘内安装android教程
你们知道在u盘内安装android吗?现在我们可以在u盘内安装安卓系统,虽然非常多人是一无所知,但是小编今天肯定能教会你们在u盘内安装android,下面就让我们看看在u盘内安装安卓系统吧。●教程第一步:制作U盘安装盘第1步,准备工作,需要一个U盘(容量不低于2G),并下载好以下两个软件:准备好U盘一个制做U盘启动用的UltraISOAndroid X86 4.4 RC2最新系统镜像(ISO格式)...
继续访问

Android8.0 版本更新无法自动安装问题解决
前言 前几天APP上线了个新版本,有部分用户反应在下载完安装包以后点击安装无反应。查了下这部分用户手机的系统的版本都是8.0+版本。因为太久没关注新版本特性,所以导致了这个问题的发生。 Android 8.0 (Android O)为了针对一些流氓软件引导用户安装其他无关应用。在应用权限设置的“特殊访问权限”中,加入了“安装其他应用”的设置。 实现 1.清单文件权限声明 &amp;amp;lt;uses...
继续访问
android app安装apk,Android App更新安装APK
概要一般地, Android App 都会被要求在App内进行软件更新提示, 让用户下载apk文件, 然后更新安装新版本, 一般过程如下:检测是否有新版本下载新版本app apk文件安装新的apk通常我们将apk文件存放在外部存储上.然后将 文件路径传递给系统, 进行apk的安装.文件路径传递过程安装代码如下:Intent intent = new Intent(Intent.ACTION_VIE...
继续访问
android发现u盘自动安装apk,安卓自动识别U盘中APK文件并进行安装操作
最近项目中有个新需求,实现安卓APK的U盘升级。刚开始上网查找方法,踩了个大坑,方式是直接和USB设备建立连接,借助第三方库libaums识别U盘的文件系统,但是最新版的libaums库0.7.5版本在加载时出现各种错误,借助网络大神说的各种方法也没能调试成功,后来换了种实现方法,更简单,轻松解决问题。方法记录如下:思路:获取U盘的挂载路径,直接读写U盘,读取到U盘中指定APK文件后,安装APK。...
继续访问
Android 8.0安装apk的正确姿势
在8.0的系统版本中,安装apk时有一层膜,现在就要捅了它,不然就是一闪而过,安装不上。这层膜就是允许安装未知应用 在8.0中这个选项默认是false,只需要打开一次即可 1、manifest中添加权限 &amp;lt;!-- 8.0安装未知应用来源 --&amp;gt; &amp;lt;uses-permission android:name=&quot;android.permission...
继续访问
Android无法安装apk,8.0未知来源应用安装权限
Android 新版本的出现 ,适配Android8.0未知来源应用安装权限处理 1、在清单文件中增加请求安装权限 <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" /> private void showChangCityDialog() { CustomDialog.Builder builder = new CustomDialog.Builder(mContext);
继续访问
Android8.0以上及7.0以下(自动安装apk)处理
Android8.0以上及7.0以下(自动安装)处理 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_
继续访问
Android N 7.0、8.0 上自动安装apk问题
Android N 7.0 上安装apk问题android.os.FileUriExposedException: file:///storage/emulated/0/trgis/1511427343635.apk exposed beyond app through Intent.getData()今天做自动更新的时候,自己下载好的apk安装包调用系统的安装服务就报错,很是郁闷,因为之前的代码是
继续访问
android下载完成不能自动安装失败,android 8.0以上自动安装apk失败的解决问题
随着android 系统的不断更新和发展,针对应用的权限管理也是越来越严格。这可是坑坏了我们这些搬砖的程序员,因为在一些上架平台,都一一宣布,以后的android应用 targetSdkVersion 必须最小为26,也就是说应用是android 8.0。将targetSdkVersion提升到26后,也随之出现了很多问题。今天只是来说一下,android 8.0下载自动安装时碰见的不自动安装的问...
继续访问

android 8.0以上自动安装apk失败的解决问题
随着android 系统的不断更新和发展,针对应用的权限管理也是越来越严格。这可是坑坏了我们这些搬砖的程序员,因为在一些上架平台,都一一宣布,以后的android应用 targetSdkVersion 必须最小为26,也就是说应用是android 8.0。将targetSdkVersion提升到26后,也随之出现了很多问题。今天只是来说一下,android 8.0下载自动安装时碰见的不自动安装的问...
继续访问

Android app实现自更新和安装,权限检测适配Android6.0以下和Android6.0和Android7.0和Android8.0,9.0以及10.0总结篇
首先下载问文件需要在AndroidManifest.xml里添加SD卡读写权限,下面两个权限:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STO...
继续访问
QorIQ P1025Tower MPU模块开发方案.docx
...
SecretPie.exe
SecretPie.exe
最新发布 《通信原理与通信技术》课程教学大纲.docx
《通信原理与通信技术》课程教学大纲.docx
PL0源代码C语言版 (2).pdf
...
电视
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...△=口+口+口,问△、o、口谁大谁小,小学一年级数学期末附加题_百度知 ... 一年级数学△ +△ +〇 +〇 +〇=27,△ +△+ 〇 +〇+ △ +△=22问△=... 上海南浦大桥长途客运中心到虹桥机场第二航站楼怎么走? 上海浦东国际机场2号航站到上海长途汽车客运总站,最快怎么走,用时多少... 从上海长途汽车客运总站到虹桥机场2号航站楼 木头爱上烈火简介 省直遴选面向哪些群体? 义务教育阶段的学生有什么权利和义务? ngclz型带制动轮鼓形齿式联轴器内容简介 GⅡCL型基本型(窄型)鼓形齿式联轴器基本参数 写给六年后的自己的一封信 诚实守信 勤勉尽责包括哪些内容 上市公司任职以前的事项是否负责 怎么给w7换主题 深圳市明航蔬果有限公司怎么样? 深圳好马快车是送什么货 微商qq空间分享会被删除吗,为什么我的分享和日志都看不到啊 灯笼椒红的青的是不是同一物种 怎么自学高中化学好 绘本讲师训练营【64期】20/21实践原创5/5《蚂蚁和西瓜》 急需一篇关于茶的论文 大约300字左右 2022年山东农行面试结果出来了吗 2022农行河南分行秋招第一批体检时间 2022农业银行北京分行秋招二面开始了吗 2022年贵阳农行秋招签约时间 云南农行秋招招聘什么时候有结果 农行云南2022年秋招面试时间提前几天通知 2022年山东农行秋季招聘成绩公布时间 2022农业银行秋招河北录取时间 2022年农行贵州分行秋招签约时间 英雄大作战乱世之光安卓版怎么下载 噪还有什么组词 梦见儿子在煤球炉里死了 栧去掉木读什? 家缠万贯是什么意思 风什么雨什么的成语 相关的成语多吗 风x雨x的成语 “可获返还商城积分114点”什么意思? 树字的成语是什么 有什么四句五字竖着的古诗? 横着5个字竖着4个字的诗 极速贷逾期还款会怎样?会上征信吗? 戈麦斯电钻怎么充电 极速分期上征信吗 中村悠一鬼灭之刃配的谁 现场能看到赫兹在舞台上吗 新的第一个字成语 关于靳诗句 宁乡有疫情吗现在 宁乡疫情共确诊几例