android客户端软件版本更新过程中,android4.1.1系统下待新版客户端软件下载准备安装时,出现了“解析程序包出现问题”的错误。
稍后尝试了android1.6和android2.3.x系统下进行软件版本更新,均无任何问题。
接下来查看了android4.1.1在进行新版客户端软件安装时出现的warning日志:
?:??: W/?(?): Unable to open zip '/data/data/com.xxx.android/cache/xxxAndroid1941014286.apk': Permission denied
?:??: W/?(?): Parse error when parsing manifest. Discontinuing installation
?:??: W/?(?): Unable to read AndroidManifest.xml of /data/data/com.xxt.android/cache/xxxAndroid1941014286.apk
进入到/data/data/com.xxx.android/cache/目录下,确实有这个xxxAndroid1941014286.apk文件,而这个文件的所有者属于 com.xxx.android应用的创建者,该文件仅仅对于所有者开放了rw(即读写)权限,那么同用户组及其他用户组的用户也就没有访问该文件的权限,当我们把安装应用程序的意图传递给android系统提供的activity,而这个activity尚没有访问该文件的权限,也就无法安装了,所以出现了“
Permission denied
”的问题。。
之所以出现这个问题,是因为下载新版本的客户端安装文件时,采用File.createTempFile的方法,将下载下来的安装文件当做临时文件写入到手机上。。
而在android1.6和android2.3.x系统下,用File.createTempFile这种方式创建的临时文件会存放到sd卡上;在android 4.1.1系统下,则会将临时文件存放到/data/data/应用包名/cache目录下,而这个目录仅对应用的创建者有读写权限。。
分享到:
相关推荐
dhcp-common-4.1.1-31.P1.el6.i686.rpm
dhcp-common-4.1.1-53.P1.el6.centos.1.x86_64.rpm dhcp-common-4.1.1-53.P1.el6.centos.1.x86_64.rpm
dhcp-4.1.1-25.P1.el6.x86_64.rpm
dhcp-4.1.1-53.P1.el6.centos.1.x86_64.rpm dhcp-4.1.1-53.P1.el6.centos.1.x86_64.rpm
离线安装包,亲测可用
linux下安装oracle需要若干包的支持。gcc-c++-4.1.1-52.el5.i386.rpm 即为其中之一。后面还有其他支持包。
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
(1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...
Android studio4.1.1默认的gradle-6.5,gradle-6.5此版本包括针对文件系统监视(file-system watching)功能的实验性加入, 可显著缩短构建时间,尤其是在增量方案中。还有其他一些改进,包括更好的版本排序、新的...
标题 "gcc-java-4.1.1-52.el5.i386" 指的是一个特定版本的 GCC(GNU Compiler Collection)针对 Java 语言的实现,版本号为 4.1.1,适用于 i386 架构的 Linux 系统,且其发行版为 Red Hat Enterprise Linux 5(RHEL5...
适合 redhat enterprise linux 5 上的编辑器的rpm包
此压缩包文件“autojs4.1.1软件和autojs打包插件.7z”包含了AutoJS的4.1.1版本及其相关的打包插件。 首先,我们来详细了解一下AutoJS 4.1.1版本。这个版本是AutoJS的一个历史版本,可能包含了当时的新功能或改进。...
libstdc++-4.1.1-52.el5.i386.
gcc-4.1.1-52.el5.src.rpm
libgomp-4.1.1-52.el5.i386.rpm
dhclient-4.1.1-53.P1.el6.centos.1.x86_64.rpm dhclient-4.1.1-53.P1.el6.centos.1.x86_64.rpm
官方离线安装包,亲测可用
在ExtJS 4.1.1中,`sdk.jsb3`文件是用于构建过程的关键,它包含了关于哪些源文件应该被包含,以及如何处理它们的信息。这个文件中的路径配置对于构建工具正确解析和处理源码至关重要。 然而,描述中提到的问题是,...
描述中提到的问题,可能是由于某些原因(如网络问题、源服务器不可用或文件被移除)导致开发者无法直接从常规渠道下载"common-4.1.1.aar"文件。aar是Android Archive的缩写,它是Android Studio中用于分发和集成...
dhclient-4.1.1-31.P1.el6.i686.rpm