Cordova結(jié)合Vue學(xué)習(xí)視頻錄取與上傳

一.序言

之前講過Cordova結(jié)合Vue學(xué)習(xí)Camera,并講述怎么通過Cordova來打包一個app,如果對Cordova和Vue不熟的同學(xué),可以自行查閱相關(guān)資料混蔼,然后本文接著講如何實習(xí)視頻錄取與文件上傳,之后希望大家自己去實現(xiàn)音頻錄取與播放珊燎、

下面是大家需要了解的一些相關(guān)文檔

cordova-plugin-media-capture----這個是Cordova媒體捕捉惭嚣,主要使用其中capture.captureVideo(啟動錄像機(jī)應(yīng)用程序)

cordova-plugin-file-transfer----這個是Cordova文件傳輸,主要使用其中的upload(文件傳輸上傳)

此文中將不再講述如何打包app悔政,想了解可以查看Cordova結(jié)合Vue學(xué)習(xí)Camera

二.app項目中安裝plugin-media-capture與plugin-file-transfer插件api

首先進(jìn)入你的app項目然后調(diào)用cmd命令行工具晚吞,分別執(zhí)行命令

cordova plugin add cordova-plugin-media-capture

cordova plugin add cordova-plugin-file-transfer


三.Vue中使用插件

以下代碼則是調(diào)用攝像機(jī)進(jìn)行錄制,當(dāng)成功時則會調(diào)用onSuccess方法并返回文件對象

//開始錄制視頻
videoCapture: function() {
    var options = {
      imit: 1,
      duration: 10
    };

    navigator.device.capture.captureVideo(this.onSuccess, this.onError, options);
},
onSuccess: function(mediaFiles) {
    var i, len;
    for (i = 0, len = mediaFiles.length; i < len; i += 1) {
        this.path = mediaFiles[i].fullPath;
        // do something interesting with the file
    }
    alert(this.path);
},

以上都能成功時我們就可以上傳文件了谋国,以下代碼是上傳視頻文件槽地。

uploadHandle: function() {
    //這里這段后期測試發(fā)現(xiàn)沒有用
    if(device.platform == "iOS") {
        var  src = cordova.file.tempDirectory + +Date.now()+ ".m4a";
    } else if(device.platform == "Android") {
        var  src = cordova.file.externalRootDirectory + +Date.now()+ ".m4a";
    }
    
    //判斷是否有文件被上傳
    if (!this.path) {
        Toast({
            message: '文件不存在',
            position: 'bottom',
            duration: 5000
        });
        return false;
    }
    
    var fileURL =  this.path;
    //上傳成功的回調(diào)方法
    var win = function(r) {
        console.info(r);
        console.log("Code = " + r.responseCode);
        console.log("Response = " + r.response);
        console.log("Sent = " + r.bytesSent);
    }
    //上傳失敗的回調(diào)方法
    var fail = function(error) {
        console.info(error);
        alert("An error has occurred: Code = " + error.code);
        console.log("upload error source " + error.source);
        console.log("upload error target " + error.target);
    }
    //上傳參數(shù)  
    var options = new FileUploadOptions();
    options.fileKey = 'file';
    options.fileName = fileURL.substr(fileURL.lastIndexOf('/') + 1);
    options.mimeType = "text/plain";
    var params = {
        value1: 'test',
        value2: 'param'
    };
    options.params = params;
    //實例化上傳類  
    var ft = new FileTransfer();
    console.info(ft);
    
    //綁定上傳進(jìn)度函數(shù)
    ft.onprogress = this.selectload;
    //開始上傳
    ft.upload(fileURL, encodeURI('http://192.168.1.23:8087'), win, fail,options);
},
//綁定顯示上傳進(jìn)度 
selectload:function(e){
    if (e.lengthComputable) {
        // this.sheetVisible=true;
        var num=(e.loaded / e.total)*100;
        this.load_val=num.toFixed(2);
        console.log(this.load_val);
        console.log('當(dāng)前進(jìn)度:' + e.loaded / e.total);
    }
}

四.最后會出現(xiàn)的問題與bug

  1. 第一個就是文件獲取但是并沒有上傳成功,首先你要注意服務(wù)端對上傳文件的大小限制
  2. 第二個就是上傳文件一定要授權(quán)手機(jī)存儲權(quán)限,這一點非常重要捌蚊,沒有存儲權(quán)限就等于拿不到剛才錄制的文件集畅,自然也就上傳不了,可以再安裝apk的時候讓用戶勾選存儲權(quán)限缅糟,

這就是我在學(xué)習(xí)過程中遇到的問題和心得挺智,還是那句話遇到問題多查詢找資料。如果有什么疑問或者不清楚的可以加QQ:948585377聯(lián)系我溺拱,我可以將我的demo發(fā)送給你逃贝,然后我們可以共同探討學(xué)習(xí)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末迫摔,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子泥从,更是在濱河造成了極大的恐慌句占,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件躯嫉,死亡現(xiàn)場離奇詭異纱烘,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)祈餐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門擂啥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人帆阳,你說我怎么就攤上這事哺壶。” “怎么了蜒谤?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵山宾,是天一觀的道長。 經(jīng)常有香客問我鳍徽,道長资锰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任阶祭,我火速辦了婚禮绷杜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘濒募。我一直安慰自己鞭盟,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布萨咳。 她就那樣靜靜地躺著懊缺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鹃两,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天遗座,我揣著相機(jī)與錄音,去河邊找鬼俊扳。 笑死途蒋,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的馋记。 我是一名探鬼主播号坡,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼梯醒!你這毒婦竟也來了宽堆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤茸习,失蹤者是張志新(化名)和其女友劉穎畜隶,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體号胚,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡籽慢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了猫胁。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片箱亿。...
    茶點故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖弃秆,靈堂內(nèi)的尸體忽然破棺而出届惋,到底是詐尸還是另有隱情,我是刑警寧澤驾茴,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布盼樟,位于F島的核電站,受9級特大地震影響锈至,放射性物質(zhì)發(fā)生泄漏晨缴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一峡捡、第九天 我趴在偏房一處隱蔽的房頂上張望击碗。 院中可真熱鬧,春花似錦们拙、人聲如沸稍途。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽械拍。三九已至突勇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間坷虑,已是汗流浹背甲馋。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留迄损,地道東北人定躏。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像芹敌,于是被迫代替她去往敵國和親痊远。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 前言:用cordova開發(fā)hybrid app的過程中氏捞,由于是html5開發(fā)的app碧聪,在手機(jī)上很多權(quán)限受限制...
    京東內(nèi)部優(yōu)惠券閱讀 5,348評論 5 65
  • 1、獲取當(dāng)前應(yīng)用的版本號 cordova plugin add cordova-plugin-app-versio...
    XuTong閱讀 2,416評論 2 11
  • Cordova主要是通過插件來調(diào)用原生API的,插件名稱根據(jù)項目需要自行查找液茎,常用的幾個會在下面列出來矾削。寡人也會持...
    世外大帝閱讀 1,051評論 0 4
  • 目錄 UI組件 開發(fā)框架 實用庫 服務(wù)端 輔助工具 應(yīng)用實例 Demo示例 UI組件 element★13489 ...
    余生社會閱讀 19,679評論 7 233
  • 每個人,都是自己那片小領(lǐng)土的國王豁护。國王的特色就是樂意聽聽別人的意見—當(dāng)別人的意見剛好和國王自己的意見相同時。 當(dāng)你...
    喜歡紫色的女子閱讀 176評論 0 1