需要用到的几个方法:

// 从本地缓存中同步获取指定 key 对应的内容。

uni.getStorageSync(KEY)

// 下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。

uni.downloadFile(OBJECT)

// 保存视频到本地

uni.saveFile(OBJECT)

// 将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。

uni.setStorageSync(KEY,DATA)

首先定义一个变量:获取本地缓存数据,看本地视频是存在。

获取已下载视频目录中的视频列表,删除无关视频。

const videoData = uni.getStorageSync('videoData')

// 获取本地视频列表

uni.getSavedFileList({

success: function (res) {

let fileList = res.fileList

console.log(fileList);

let needArr = videoData.map(item => item.videoAddress)

fileList.forEach((item, index) => {

if(needArr.includes(item.filePath)){

item.text = "需要这个视频"

}else{

// 删除视频列表中无关视频

uni.removeSavedFile({

filePath: item.filePath,

complete: function (res) {

console.log(res);

}

});

}

});

console.log(fileList)

}

});

写个条件判断:如果存在直接将视频地址插入页面进行播放,如果不存在则进行下载视频-保存视频-缓存本地链接。

const _this = this;

// 判断是否有缓存

if(videoData){

console.log('我是视频-有缓存')

_this.videoSrc = videoData

}else{

console.log('我是视频-没有有缓存')

_this.videoSrc = url // 我是在线链接

// 下载视频

_this.downFile(videoUrlYi,'videoData');

}

// 下载视频

downFile(url,name){

const _this = this;

uni.downloadFile({

url: url,

success: (res) => {

if (res.statusCode === 200) {

console.log('下载成功');

console.log(res.tempFilePath)

//保存视频到本地

uni.saveFile({

tempFilePath: res.tempFilePath,

success: function (res) {

console.log('保存成功');

var savedFilePath = res.savedFilePath;

console.log(savedFilePath)

_this.videoSrc = savedFilePath

console.log('当前连接'+_this.videoSrc)

uni.setStorageSync(name, savedFilePath);

}

});

}

}

});

}

作为一名码农,随着平时工作的需要,这里收集了国内外很多优秀网站,这其中包括在线工具、在线运行、免费接口、在线资源、在线学习、技术论坛、技术博客等等,满足一般程序员日常需求。

uni 获取本地文件_APP读取本地文件夹内视频播放相关推荐

  1. 本地服务器json文件,从本地ftp服务器读取Json文件

    我是存储在本地服务器中的名为File1.js的json文件.我想读取json文件的内容,并希望在其他文件中显示数据.我已经尝试使用JavaScript编码,但它不能正常工作.从本地ftp服务器读取Js ...

  2. android读取assets中的html文件,android读取assets文件.htm

    android读取assets文件 android读取assets文件 style='FONT-SIZE: 14px; FONT-FAMILY: verdana, "ms song" ...

  3. java+读取source资源_如何从JavaJAR文件中读取资源文件?

    如何从JavaJAR文件中读取资源文件? 我试图从一个单独的JAR文件中访问一个XML文件,这个JAR是作为桌面应用程序运行的.我可以获得我需要的文件的URL,但是当我将它传递给FileReader( ...

  4. C#不用ArcEngine,生成Shp文件(五)---------读取.shx文件和生成.shx文件

    这一篇来写一下.shx文件的读取跟生成.测试数据下载地址为:http://download.csdn.net/detail/gis0911178/9650967 在第一篇时候有介绍. 索引文件(.sh ...

  5. 第四章:数据存储-csv文件处理-读取csv文件的两种方式

    直接学习:https://edu.csdn.net/course/play/24756/280718 csv文件处理-读取csv文件的两种方式: # 这种方式读取到的每一条数据是个列表,所以需要通过下 ...

  6. 【Python基础】生成.pkl文件,读取.pkl文件的内容

    保存 def save_dict(data, name):with open(name + '.pkl', 'wb') as f:pickle.dump(data, f, pickle.HIGHEST ...

  7. Python 将数据写入pkl文件,读取pkl文件

    Python 将数据写入pkl文件,读取pkl文件 写入pkl文件 data = {"name": ["李明", "胡莉"]} with o ...

  8. Swift5 获取文件大小,清除缓存,删除沙盒里的文件,读取本地文件

    获取文件夹大小 /// 遍历文件夹获取目录下的所有的文件 遍历计算大小class func folderSizeAtPath(folderPath:String) -> CGFloat {if ...

  9. java读取本地文件_java 读取本地文件实例详解

    java 读取本地文件实例详解 用javax.xml.w3c解析 实例代码: package cn.com.xinli.monitor.utils; import org.w3c.dom.Docume ...

最新文章

  1. C语言去括号编程题,数据结构课件.ppt
  2. 【JVM调优工具篇】使用MAT工具分析dump文件(查看GC Roots)
  3. 关于怎么怎么把 unsingned char 数据转换为 Opencv 的Mat类型,并且吧图像显示出来
  4. 为什么面试总喜欢考算法题?
  5. NET的JIRA活动时间线REST API
  6. rtorrent -- PT机的下载利器
  7. ART、JIT、AOT、Dalvik之间有什么关系?
  8. JAVA 即时网络通信我的服务器
  9. git 删除分之以及删除文件夹
  10. Android 数据库加密
  11. iOS开发字符串倒序,倒序单词字母,不倒序单词位置
  12. Flutter实战1 --- 写一个天气查询的APP
  13. 心电电路算法滤波_简述心电信号采集原理及电路设计
  14. 破解 语序点选验证码
  15. 【阅读笔记】Inverting Gradients -- How easy is it to break privacy in federated learning?
  16. 基于STM32单片机多功能电梯系统设计(论文原理图程序)
  17. 赢了世界冠军不意外,和AI在DOTA中并肩作战才让人又纠结又兴奋
  18. 蓝云ERP系统项目笔记——库存预警(9)
  19. PZT-JH20/8高压电极化装置(20KV以下压电陶瓷同时极化1-8片)
  20. (三)stm32巡线小车首尝试 测速篇

热门文章

  1. 常用技术指标实战技巧
  2. python第三方包国内镜像网址
  3. scrapy自定义扩展(extensions)实现实时监控scrapy爬虫的运行状态
  4. baq在聊天中啥意思,Epicor 10在BPM工作流设计器中链接BAQ(避免自定义代码)
  5. 最新开源版知音QQ助手V1.0.16版本
  6. 小菜鸟之oracle数据字典
  7. 订单增2倍?如何利用促销手段瞄准圣诞季高意向顾客?
  8. 人为什么活着?活着就是去理解我们的宿命
  9. nested exception is io.lettuce.core.RedisCommandExecutionException: MOVED 7514 100.71.1.91:6380
  10. matlab mri的k空间,理解磁共振K空间,自己动手还原和处理K空间数据