關(guān)于 navigator.mediaDevices.getUserMedia 的輸入?yún)?shù)說明

      網(wǎng)友投稿 1182 2022-05-30

      本文講解使用 SAP UI5 barcode scanner 調(diào)用本機攝像頭時,在 PC 端瀏覽器測試時,同樣是 Cordova API 不可用,進入 else 分支的執(zhí)行邏輯:

      如果 Cordova API 不可用,但是 isUserMediaAccessSupported 仍然返回 true,則仍然可以打開 scan 對話框:

      /** * Used to detect browsers which does not have access to html5 user media api and cant use device camera * @private * @returns {boolean} true is user media access supported by html5 compatible browser */ function isUserMediaAccessSupported() { return !!(window && window.navigator && window.navigator.mediaDevices && window.navigator.mediaDevices.getUserMedia); }

      這里 window.navigator.mediaDevices.getUserMedia 的含義:

      MediaDevices.getUserMedia() 方法提示用戶允許使用媒體輸入,該輸入生成一個 MediaStream,其軌道包含所請求的媒體類型。

      例如,該流可以包括視頻軌道(由硬件或虛擬視頻源(如相機、視頻記錄設(shè)備、屏幕共享服務(wù)等)產(chǎn)生)、音頻軌道(類似地,由物理或 虛擬音頻源(如麥克風、A/D 轉(zhuǎn)換器等),以及可能的其他軌道類型。

      它返回一個解析為 MediaStream 對象的 Promise。 如果用戶拒絕許可,或者匹配的媒體不可用,則分別以 NotAllowedError 或 NotFoundError DOMException 拒絕承諾。

      其中 getUserMedia 為瀏覽器原生實現(xiàn)。

      async function getMedia(constraints) { let stream = null; try { stream = await navigator.mediaDevices.getUserMedia(constraints); /* use the stream */ } catch(err) { /* handle the error */ } }

      傳入 getUserMedia 的 constraints 參數(shù):

      constraints 是一個對象,指定要請求的媒體類型,以及每種類型的任何要求。

      約束參數(shù)是一個具有兩個成員的對象:視頻和音頻,描述請求的媒體類型。 必須指定其中之一或兩者。 如果瀏覽器無法找到符合給定約束的指定類型的所有媒體軌道,則返回的 Promise 會被 NotFoundError DOMException 拒絕。

      如果為媒體類型指定了 true,則結(jié)果流中需要包含該類型的軌道。 如果由于任何原因不能返回一個,對 getUserMedia() 的調(diào)用將導(dǎo)致錯誤。

      雖然出于隱私原因無法訪問有關(guān)用戶相機和麥克風的信息,但應(yīng)用程序可以使用額外的約束來請求它需要和想要的相機和麥克風功能。 以下表示對 1280x720 相機分辨率的偏好:

      { audio: true, video: { width: 1280, height: 720 } }

      如果不存在此分辨率或更高分辨率的相機,則返回的 Promise 將被 OverconstrainedError 拒絕,并且不會提示用戶。

      關(guān)于 navigator.mediaDevices.getUserMedia 的輸入?yún)?shù)說明

      API Explorer CloudIDE JavaScript 通用安全

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Google Earth Engine ——非洲參考蒸發(fā)量(RET_E)數(shù)據(jù)集FAO/WAPOR/2/L1_RET_E
      下一篇:lucence特殊字符轉(zhuǎn)義
      相關(guān)文章
      亚洲成AV人片在WWW| 亚洲国产婷婷香蕉久久久久久| 亚洲AV无码一区二区乱子仑 | 亚洲无线一二三四区手机| 亚洲成a人片在线观看天堂无码 | 亚洲综合精品网站在线观看| 日韩精品亚洲专区在线影视| 日韩欧美亚洲国产精品字幕久久久| 2020天堂在线亚洲精品专区| 亚洲fuli在线观看| 亚洲不卡中文字幕| 亚洲精品第一国产综合野| 亚洲AV成人噜噜无码网站| 亚洲黄色激情视频| 亚洲色大成网站www永久网站| 亚洲国产乱码最新视频| 亚洲日韩精品国产3区| 亚洲色大18成人网站WWW在线播放| 亚洲色大成网站www久久九| 国产精品亚洲专区无码唯爱网| 亚洲av日韩综合一区二区三区| 亚洲av色香蕉一区二区三区蜜桃| 欧美亚洲精品一区二区| 久久精品国产亚洲av瑜伽| 亚洲AV无码乱码在线观看| 亚洲一区二区三区在线视频| 337P日本欧洲亚洲大胆精品| 在线综合亚洲欧洲综合网站| 欧洲 亚洲 国产图片综合| 亚洲中文字幕无码av| 亚洲国产精品ⅴa在线观看| 国产成人精品久久亚洲高清不卡 | 久久精品国产亚洲AV| 亚洲va中文字幕无码| a级亚洲片精品久久久久久久 | 亚洲精品国精品久久99热一| 亚洲av综合avav中文| 亚洲网站在线播放| 亚洲精品国产日韩| 国产精品观看在线亚洲人成网| 亚洲欧洲中文日韩av乱码|