最近做项目,做升级的时候,老出现“解析包异常”的问题。
查了很久,发现问题不在下载流程上。而且只有兼容7.0的时候,会出现这类问题。
所以找了一下,记录一下问题。
Android6.0引入的动态权限控制(Runtime Permissions),Android7.0又引入“私有目录被限制访问”,“StrictMode API 政策”。
问题就出在这:“私有目录被限制访问“。
简单来说,私有目录访问受限制,我想到的解决办法是,放到公有目录下。
将下载目录改成:
intent.setDataAndType(Uri.fromFile(
new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DOWNLOADS),
"myApp.apk")),
"application/vnd.android.package-archive");
本文探讨了在Android 7.0中遇到的解析包异常问题,并提供了有效的解决方案。通过调整APK文件的下载位置到公共目录,避免了因私有目录访问限制导致的问题。
1万+

被折叠的 条评论
为什么被折叠?



