在一次工作中,需求是进入应用程序splash时检测版本,发现新版本提示用户进行更新,更新好后就自动跳转安装界面。

我当时是把用户点击更新下载后的apk存放到data/data/packageName/files这个目录下,是通过getFilesDir().toString(),通过log打印路径也是完全正确的,打开android studio的Android Device Monitor调试工具,在data/data/packageName/files文件夹下面也有这个apk,

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://"+filePath), "application/vnd.android.package-archive");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

这里面的filePath就是指到这个文件,data/data/pacageName/files/xxxx.apk,这个隐式意图跳转是跳转到安装界面的固定写法,没任何问题,但是下载好后跳转就出现:

排查很多可能的原因,也没什么问题。后来我打开调试工具的时候,看到:

可以看出,权限位上只显示当前应用可读可写,但跳转到安装界面是属于别的应用程序,没有权限执行解析操作,于是就会出现解析程序包时出现问题。

解决方案:

通过在代码中写入linux指令修改此apk文件的权限,改为全局可读可写可执行:

String[] command = {"chmod", "777", file.getPath() };
ProcessBuilder builder = new ProcessBuilder(command);
try {builder.start();
} catch (IOException e) {e.printStackTrace();
}

通过调试工具,发现已经变为全局的权限了。

然后再进行 测试,发现问题已经解决。

小提示 : 如果是android7.0以上的系统,请查看我的另外一片文章,上面写有解决方案,百分百能解决问题

传送地址:点击打开

更新应用程序安卓apk时出现解析程序包时出现问题相关推荐

  1. 为知更新Android下一个apk安装多个程序入口图标

    Android开发中,一个工程对应一个AndroidManifest.xml文件,这个文件中包含有该项目的一些设置,如权限.SDk版本,Activity.Service信息等.一般而言,这个文件中会有 ...

  2. android关键应用程序,安卓开发:Android应用程序的四个关键点

    核心提示:本教程为大家介绍在安卓开发中我们应该关注那几点. 对于一个Android应用程序来说,是由四种关键构造块组织而成的,这四种构造块分别是:Activity.Intent Receiver.Se ...

  3. python解析数据包时出现问题_MySQL Connector / Python InterfaceError:“解析EOF数据包失败”...

    据我所知,我已经安装了MySQL Connector / Python(v1.2.3)模块没有问题 . 这是在CentOS 5.4上使用Python 2.7.7(Anaconda发行版,尽管在vani ...

  4. flask服务器端解析文件包时出现问题,flask + celery 遇到的那些坑

    特么的...写好的东西不见了一半...又得重写.. 星期一开始,有同事和我说要不要把我们的项目加上celery,异步发送邮件.我想了想这块我没碰过,正好学点新东西. celery是干什么的,我这里抄点 ...

  5. apk部分手机安装失败_安装apk解析包时出现错误怎么办?小编快速帮你解决

    Android智能手机的用户都会或多或少的遇到到这样的问题--"安装apk解析包时出现错误".那么遇到这样的问题该如何解决?其实导致apk程序安装失败的原因是多方面的,而这所有的错 ...

  6. Android 7.0解析包时出现问题 的解决方案(应用内更新)

    在工作上遇到了一个关于下载更新安装包无法安装的问题,解决之后特地在这里做一个笔记,遇到相似问题的朋友可以试试看能不能解决自己的问题. 问题描述 我们在进行Android开发的时候,一般都会在应用里检测 ...

  7. 用java下载apk解析包出错_安装apk解析包时出现错误怎么办

    安装apk解析包时出现错误怎么办 安装apk解析包时出现错误怎么办相信许多使用Android智能手机的用户都会或多或少的遇到到这样的问题--"解析包时出现错误".那么遇到这样的问题 ...

  8. Android Studio 导出的apk安装时出现解析软件包错误(已解决)

    在安装apk包时我的手机以及模拟器上都没出现这个问题,小米手机.三星手机还有其他手机安装时会出现解析软件包错误,在网上找了一下大多数是因为sdk版本的原因, 所以首先检查minSdkVersion发现 ...

  9. apk安装,解析包时出错

    apk安装,解析包时出错是当时手机版本过低,需升级手机版本,或者下载apk的历史版本.豌豆荚里可以安装APP的历史版本,APP和手机系统的版本低利于数据抓取.

  10. 下载apk到本地,安装遇到的解析包时出现错误的分析

    遇到一些问题,使用代码的结果是无法满足自己的需求,很多时候是和手机本身的的一些权限和机制有关系. 问题1:下载apk到 内部存储,安装时无法找到路径,提示:解析包时发生错误 这个原因就是由于权限的原因 ...

最新文章

  1. 疫情可以来,但比赛不能断
  2. 洛谷P1119 灾后重建[Floyd]
  3. 最小生成树(Prim、Kruskal)算法,秒懂!
  4. ❤️ 爆肝一个月!JAVA零基础入门总结(下)❤️
  5. 编译原理预测分析程序
  6. 计算机表格最高分,excel表格里怎样算最高分
  7. 第三季1:ORTP库的移植与局域网视频传输
  8. bzoj 2660: [Beijing wc2012]最多的方案
  9. 简单神经网络_mnist
  10. solr与zookeeper搭建solrcloud分布式索引服务实例
  11. 计算机怎么新建word文档,右键新建没有word文档怎么办?Win10新建word文档的方法...
  12. 照片宽高比怎么设置_2019年中级会计报名照片上传完整攻略
  13. 介绍Google Code Playground
  14. PS图层蒙版、参考线显示边距、盖印图层
  15. 使用Linux命令cURL实现文件定时上传到ftp服务器的程序
  16. Android加密文件系统
  17. 微信怎样收发邮件,一款更全能的掌上邮箱,随心邮你
  18. poj3046 Ant Counting
  19. win10网络连接显示无网络但可以上网
  20. 小说中场景的功能_小说叙述视角及作用

热门文章

  1. CSS实现炫酷动画背景
  2. Rust游戏引擎Bevy初探
  3. Unity游戏内版本更新
  4. redis好用的界面管理工具分享
  5. 产品能力提升|《简约至上·交互式设计四策略》
  6. V4L2文档翻译(十一)
  7. 制作Linux下程序一键安装包
  8. 互联网金融VS区块链金融
  9. 为了对抗内卷,我“偷”了阿里两份笔记:JDK 源码 +Java 并发图册
  10. 推荐10款一直在使用的Chrome提效插件