微信小程序 一键保存视频到手机相册功能(视频来源为链接)
流程:
1. 首先第一次要获取用户授权,授权使用相册权限
调用this.onStartDownload()函数获取用户授权
2.拿到视频地址就可以实现下载功能了
3.主要的api:
wx.downloadFile()
wx.getFileSystemManager()
wx.saveVideoToPhotosAlbum()
视频链接为 http://xxxxxx.mp4 形式
通过https下载
wx.downloadFile({url: this.data.videoUrl, // 视频资源地址filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.mp4',header: {"Content-Type":"video/mp4"},success: res => {console.log('downloadFile成功回调res:', res)wx.hideLoading()let FilePath= res.filePath; // 下载到本地获取临时路径let fileManager = wx.getFileSystemManager();// 保存到相册wx.saveVideoToPhotosAlbum({ // 保存到相册filePath: FilePath,success: file => {// console.log('saveVideoToPhotosAlbum成功回调file:', file)wx.showToast({title: '视频保存成功',duration: 3000,icon: 'none'})fileManager.unlink({ // 删除临时文件filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.mp4',})},fail: err => {// console.log('saveVideoToPhotosAlbum失败回调err:', err)fileManager.unlink({ // 删除临时文件filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.mp4'})wx.showToast({title: '视频保存失败',duration: 3000,icon: 'none'})},complete() {wx.hideLoading()}})//},fail(e) {console.log('失败e', e)wx.showToast({title: '视频保存失败1',duration:3000,icon:'none'})},complete() {// wx.hideLoading();}
})
//获取用户授权相册权限
onStartDownload() {wx.getSetting({success: (res) => {if (res.authSetting['scope.writePhotosAlbum'] === undefined) {wx.authorize({scope: 'scope.writePhotosAlbum',success: () => {console.log('打开了授权')this.downloadVideo()},fail: (err) => {console.log('授权失败:', err)}})} else if (!res.authSetting['scope.writePhotosAlbum']) {wx.openSetting({success: (res) => {console.log('openSetting成功回调:res', res)if (res.authSetting['scope.writePhotosAlbum']) {console.log('授权了')this.downloadVideo()} else {}},fail: (err) => {},})} else {this.downloadVideo()}}})},
微信小程序 一键保存视频到手机相册功能(视频来源为链接)相关推荐
- 微信小程序选择图片,读取手机相册或者相册
//点击图片选择手机相册或者电脑本地图片 changeAvatar: function(e) { var _this = this wx.chooseImage({ c ...
- 微信小程序点击按钮实现手机振动功能
<button bindtap="vibrateLongTap">振动(400ms)</button> <button bindtap="v ...
- 微信小程序web-view 外部引用h5页面调用摄像头录制视频 配有提示音
微信小程序web-view 外部引用h5页面调用摄像头录制视频 配有提示音 1.目前的需求是什么 2.都踩了那些坑 1.小程序 2.h5语音提示 3.语音合成声音录制不进去,ios有时候是麦克风,有时 ...
- 微信小程序一键置顶操作详解:
微信小程序一键置顶操作详解: 第一种方式:采用scroll-view滚动视图实现 第二种方式,直接用view实现 第一种方式:采用scroll-view滚动视图实现 下面是代码简介: wxml文件代码 ...
- 全新动态视频壁纸微信小程序源码下载支持多种分类短视频另外也有静态壁纸
这是一款主打动态视频壁纸的一款微信小程序源码 当然啦,里面也是有静态壁纸的 其实这款小程序也可以说是短视频小程序都可以 该款小程序全采集, 大家应该知道小编之前也发过一款动态壁纸的小程序 不过那款是没 ...
- 新动态视频壁纸微信小程序源码_支持多种分类短视频-也有静态壁纸
这是一款主打动态视频壁纸的一款微信小程序源码,当然啦,里面也是有静态壁纸的. 其实这款小程序也可以说是短视频小程序都可以,该款小程序全采集,另外支持多种流量主!! 下载链接: 新动态视频壁纸微信小程序 ...
- 微信小程序:设置字体跟随手机系统
小程序开发:全局设置跟随手机系统默认字体 前言 最近在开发一款微信小程序,发现字体不是跟随手机系统设置的字体,这样对用户很不友好,通过下面这行代码,就可以将页面的字体搞成系统默认字体了. 提示:要设置 ...
- 织梦微信小程序一键生成插件(资讯案例模板),整合织梦CMS一切数据信息
<织梦微信小程序一键生成插件(资讯模板)>是织梦58发布的便于生成微信小程序的插件,让用户更方便生成资讯类小程序. 版本:1.1(当前1.0版本,下载安装之后可以进行更新升级) 使用该插件 ...
- 微信小程序上传后 进行性手机扫码阅览 发现白屏的解决
目录 问题: 微信小程序上传后 进行性手机扫码阅览 发现白屏的解决 1.上传时没有勾选保护 2.请求的域名没有配置 问题: 微信小程序上传后 进行性手机扫码阅览 发现白屏的解决 1.上传时没有勾选保护 ...
- 最新开源微信小程序一键开发平台源码 支持15大功能模块+完整前后端+搭建教程
分享一个开源微信小程序一键开发综合平台源码,系统支持15大小程序功能模块,涉及各行各业,含完整前后端+详细搭建部署教程. 系统特色功能一览: 1.全新重构升级功能后端文件和前端文件: 2.整套源码已经 ...
最新文章
- 事务连接中断_漫画——你还记得原生的JDBC怎么连接数据库吗?
- highcharts如何把图多余的空白页面_如何进行前端性能测试入门篇
- 示例:工具提示对象---享元模式应用
- 不要重新发明轮子_是否重新发明轮子
- FSF 称 DRM 被用于锁定、控制和监视用户
- 计算机学3d建模吗,计算机三维建模与动画基础
- Ubuntu 配置 Tomcat
- 线段树区改区查标记永久化板子
- windows下mongodb安装与使用
- 构建自己的不可替代性
- Atlas初步了解 [转]
- vb adodb mysql_PHP_ADODB类使用,MySQL的例子PHP中最通用的数据 - phpStudy
- java数组和集合的区别_java中数组和集合的区别是什么?
- 2794: [Poi2012]Cloakroom
- 东南亚跨境电商ERP怎么选?萌店长ERP,含大数据分析的免费erp系统
- iPhone电池健康度是什么
- 万户OA助力红豆集团信息化建设方案
- 如何配置静态路由使三台PC机互联
- SIP注册信令消息示范及解释
- 夏洛克和他的女朋友—线性筛—逻辑
热门文章
- Linux【网络库】| 【02 <netdb.h>】以及网络常用结构体
- vuepress打包报错:error Error rendering /:
- 1009 - Back to Underworld(DFS)
- java中catch什么意思_你真的理解Java中的try/catch/finally吗?
- php excel 导入图片,利用php实现读取excel中的图片
- 路由器刷OpenWRT实现动态dns
- cloudfare dns_Cloudflare配置动态dns(ddns)
- tween.js 中文使用指南 1
- 实例介绍fullpage.js常用的配置和方法
- php 设置post大小_php – 设置$_POST变量