今天测试下载新版本后自动安装,结果报错了~
后来查了一下,是DownloadManager的问题~
从Android 4.2开始,manager.getUriForDownloadedFile(id)将返回的scheme是content,返回uri是content://downloads/my_downloads/15,没有给出路径,这样调用系统的安装方法就会出现ActivityNotFoundException的异常,我找了很久终于找到了文件放在了哪里。
下面我把转化content的Uri为file的Uri方法分享给大家;
/**
* 转化contentUri为fileUri
*
* @param contentUri 包含content的Uri
* @param downLoadId 下载方法返回系统为当前下载请求分配的一个唯一的ID
* @param manager 系统的下载管理
*
* @