Cordova 媒體捕獲

2018-12-28 14:50 更新

此插件用于訪問(wèn)設(shè)備的捕獲選項(xiàng)。

步驟1 - 安裝媒體捕獲插件

要安裝此插件,我們將打開(kāi)命令提示符并運(yùn)行以下代碼 -

C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-media-capture

步驟2 - 添加按鈕

由于我們希望向您展示如何捕獲音頻,圖片和視頻,因此我們將在 index.html 中創(chuàng)建三個(gè)按鈕。

<button id = "audioCapture">AUDIO</button>
<button id = "imageCapture">IMAGE</button>
<button id = "videoCapture">VIDEO</button>

步驟3 - 添加事件監(jiān)聽(tīng)器

下一步是在 index.js 中的 onDeviceReady 內(nèi)添加事件監(jiān)聽(tīng)器。

document.getElementById("audioCapture").addEventListener("click", audioCapture);
document.getElementById("imageCapture").addEventListener("click", imageCapture);
document.getElementById("videoCapture").addEventListener("click", videoCapture);

步驟4A - 捕獲音頻功能

index.js 中的第一個(gè)回調(diào)函數(shù)是 audioCapture 。 要啟動(dòng)錄音機(jī),我們將使用 captureAudio 方法。 我們使用兩個(gè)選項(xiàng) - limit 將允許每次捕獲操作只記錄一個(gè)音頻剪輯, duration 是聲音片段的秒數(shù)。

function audioCapture() {

   var options = {
      limit: 1,
      duration: 10
   };

   navigator.device.capture.captureAudio(onSuccess, onError, options);

   function onSuccess(mediaFiles) {
      var i, path, len;
		
      for (i = 0, len = mediaFiles.length; i < len; i += 1) {
         path = mediaFiles[i].fullPath;
         console.log(mediaFiles);
      }
   }

   function onError(error) {
      navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
   }
	
}

當(dāng)按下 AUDIO 按鈕時(shí),錄音機(jī)將打開(kāi)。

Cordova Capture Audio

控制臺(tái)將顯示用戶(hù)捕獲的對(duì)象的返回?cái)?shù)組。

Cordova Capture Audio Log

步驟4B - 捕獲圖像功能

捕獲圖像的功能將與最后一個(gè)相同。 唯一的區(qū)別是我們這次使用 captureImage 方法。

function imageCapture() {

   var options = {
      limit: 1
   };

   navigator.device.capture.captureImage(onSuccess, onError, options);

   function onSuccess(mediaFiles) {
      var i, path, len;
		
      for (i = 0, len = mediaFiles.length; i < len; i += 1) {
         path = mediaFiles[i].fullPath;
         console.log(mediaFiles);
      }
   }

   function onError(error) {
      navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
   }
	
}

現(xiàn)在我們可以點(diǎn)擊 IMAGE 按鈕啟動(dòng)相機(jī)。

Cordova Capture Image

當(dāng)我們拍照時(shí),控制臺(tái)將使用image對(duì)象記錄數(shù)組。

Cordova Capture Image Log

步驟4C - 捕獲視頻功能

讓我們重復(fù)相同的概念來(lái)捕獲視頻。我們將使用 videoCapture 方法。

function videoCapture() {

   var options = {
      limit: 1,
      duration: 10
   };

   navigator.device.capture.captureVideo(onSuccess, onError, options);

   function onSuccess(mediaFiles) {
      var i, path, len;
		
      for (i = 0, len = mediaFiles.length; i < len; i += 1) {
         path = mediaFiles[i].fullPath;
         console.log(mediaFiles);
      }
   }

   function onError(error) {
      navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
   }
	
}

如果按 VIDEO 按鈕,相機(jī)將打開(kāi),我們可以錄制視頻。

Cordova Capture Video

保存視頻后,控制臺(tái)將再次返回?cái)?shù)組。這個(gè)時(shí)候跟視頻對(duì)象里面。

Cordova Capture Video Log
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)