您现在的位置: 首页 > 开发编程 > HBuilder教程 > 正文

h5+ IOS App中判断本地文件是否存在 plus.io.resolveLocalFileSystemURL()

作者:admin来源:网络浏览:时间:2017-10-11 19:41:18我要评论
分享到
问题描述:首页视频首次加载后保存到了手机本地,再次加载时判断视频文件是否存在,存在则直接读取,不存在则再去服务器下载并保存至本地。Android平台中正常,IOS中一直不能准确判断文件是否存在,经测试即使文件存在也提示不存在。。。

解决办法:经过查询后得知,在传递url参数时需增加个前缀 "file:",代码如下

  1. //判断视频是否存在 
  2.                 plus.io.resolveLocalFileSystemURL("file:" + sd_path, function(entry) { 
  3.                     entry.file(function(file) { 
  4.                         videoMedia.src = sd_path; 
  5.                         videoMedia.autoplay = true
  6.                         videoMedia.controls = false
  7.                         videoMedia.load(); 
  8.                     }); 
  9.                 }, function(e) { 
  10.                     //下载视频资源 
  11.                     var dtask = plus.downloader.createDownload(common.global_URL + jsonData[0].vdolink, { 
  12.                         "filename": hb_path, 
  13.                         "timeout": 10, 
  14.                         "retry": 2 
  15.                     }, function(d, status) { 
  16.                         if(status == 200) { 
  17.                             videoMedia.src = sd_path; 
  18.                             videoMedia.autoplay = true
  19.                             videoMedia.controls = false
  20.                             videoMedia.load(); 
  21.                         } else { 
  22.                             //直接跳转首页 
  23.                             mui.openWindow({ 
  24.                                 url: 'webview_main.html'
  25.                                 id: 'webview_main.html'
  26.                                 preload: true
  27.                                 show: { 
  28.                                     aniShow: 'pop-in' 
  29.                                 }, 
  30.                                 waiting: { 
  31.                                     autoShow: false 
  32.                                 } 
  33.                             }); 
  34.                         } 
  35.                     }); 
  36.                     dtask.start(); 
  37.                 }); 

参考链接:https://stackoverflow.com/questions/21980112/cordova-resolvelocalfilesystemurl-success-call-back-failing-on-ios

        https://issues.apache.org/jira/browse/CB-6116

相关热词搜索: