安卓 SD卡写入文件后不能立即显示被写入的文件解决方法_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 安卓 SD卡写入文件后不能立即显示被写入的文件解决方法

安卓 SD卡写入文件后不能立即显示被写入的文件解决方法

 2015/1/26 10:51:51  chenxiaoliba  程序员俱乐部  我要评论(0)
  • 摘要:每次通过输出流往SD卡写入文件,连接上电脑,用MTP的方式模拟一个移动磁盘,打开磁盘却没有这样一个文件,而通过adb的方式查看就有,造成这个现象的原因是,每次写入之后,MTP的数据库并没有更新,因为更新一次MTP数据库需要的带价比较大,所以只有在重启,挂载和用户手动发送Intent出发,故存入文件后需要手动发送Intent广播,出发一下MTP数据库的更新。/***出发扫描mtp下的文件,在保存文件到sd卡下后,不能显示,故这里触发一下扫描机制,让手机连上电脑后
  • 标签:方法 解决方法 解决 文件

每次通过输出流往SD卡写入文件,连接上电脑,用MTP的方式模拟一个移动磁盘,打开磁盘却没有这样一个文件,而通过adb的方式查看就有,造成这个现象的原因是,每次写入之后,MTP的数据库并没有更新,因为更新一次MTP数据库需要的带价比较大,所以只有在重启,挂载和用户手动发送Intent出发,故存入文件后需要手动发送Intent广播,出发一下MTP数据库的更新。

/** 
      * 出发扫描 mtp下的文件,在保存文件到 sd卡下后,不能显示,故这里触发一下扫描机制,让手机连上电脑后,就可以读出文件了 
      * @param fName,文件的完整路径名 
      */  
     public   void  fileScan(String fName){   
        Uri data = Uri. parse("file:///" +fName);   
        sendBroadcast( new  Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE , data));  

 

发表评论
用户名: 匿名