代碼放在github上,頁面實現的功能是,視頻的播放,以及視頻下載的整個流程,包括受權和保存到相冊。vue
簡單說說視頻下載的整個流程吧git
wx.getSetting({ //獲取用戶當前的受權情況 success: res => { let recordAuth = res.authSetting["scope.writePhotosAlbum"]; if (recordAuth === true) { //1.已經受權成功,直接調用下載方法 self.saveVideoToAlbum(); } else if (recordAuth === false) { //2.申請過受權,但用戶不一樣意,打開手機系統設置 self.openAuth(); } else if { //3.從未受權,彈出受權窗口 wx.authorize({ scope: "scope.writePhotosAlbum", success: () => { //受權成功 //頁面提示受權成功 }, fail: () => { //受權失敗 self.msg("text", "受權失敗,請重試"); } }); } } });
在第二種狀態,申請過受權,可是用戶不一樣意,咱們調用openAuth 方法,方法代碼以下,github
openAuth() { let self = this; wx.openSetting({ success: function(res) { let recordAuth = res.authSetting["scope.writePhotosAlbum"]; if (recordAuth == true) { //手動設置受權成功 // self.saveVideoToAlbum(); 需不須要在這裏調用下載方法,本身考慮 } } }); },
關於受權的邏輯就這麼多了,接下來講說,下載保存邏輯,須要注意的是,每次在下載保存以前須要先清除本地的緩存文件,否則只有10m的緩存文件,下載不了幾個視頻就滿了。緩存
下載的邏輯是先調用wx.downloadFile 方法,把視頻下載到本地緩存,而後再調用wx.saveVideoToPhotosAlbum方法保存;ide
還有清除本地緩存的方法,使用的是this