问题:有些后缀为.apk的文件被下载下来后,无法被正确的识别成android的可安装文件?为什么?
首先,查看手机目录data/data/com.android.providers.downloads/databases/download.db数据库文件,查看mime-type字段的值是否为“application/vnd.android.package-archive”,如果不是,那就是问题所在;
其次,在browser应用代码下载模块中,查找mimetype写入上述db文件中地方,强制把错误的mimetype值修改正确并存入db表中。
原因分析:
有的网站返回的下载响应体content-type值是applicationg/octet-stream:未知类型,浏览器收到这样的值后未做进一步处理就将其存入db表中了,导致其他应用无法识别准确类型。
此外还要熟悉sqlite3指令的使用
sqlite3 xxx.db open db
.mode column 表格样式
.headers on 显示表头