检测浏览器是否在等待媒体权限?

时间:2015-12-15 10:48:08

标签: javascript jquery

javascript 中是否有办法检查浏览器(任何浏览器)是否在等待用户允许 麦克风相机

enter image description here

注意: - 基于此,我想确定是否已保存媒体权限。即如果保存了权限,则弹出窗口不会出现。

修改

MEDIA = ( navigator.webkitGetUserMedia     ||
          navigator.mozGetUserMedia        ||
          navigator.msGetUserMedia         ||
          navigator.getUserMedia           );

get_user_media: function() {
  jQuery("instruction_image_id").show();

  (MEDIA.bind(navigator))(
    {audio: true, video: false},
    media_success(),
    media_error()
  );
}

media_success: function() {
  jQuery("instruction_image_id").hide();
}

修改

注意: - 我需要一个跨浏览器解决方案。 THIS(标记为重复)主题解决方案仅适用于Chrome。

1 个答案:

答案 0 :(得分:0)

可在此处检查等待之间的时间,请参阅开始和结束权限:

// Start the permission.
navigator.getUserMedia (
  // constraints
  {
    video: true,
    audio: true
  },

  // successCallback
  function(localMediaStream) {
    // End the permission
    var video = document.querySelector('video');
    video.src = window.URL.createObjectURL(localMediaStream);
    video.onloadedmetadata = function(e) {
      // Do something with the video here.
    };
  },

  // errorCallback
  function(err) {
    if(err === PERMISSION_DENIED) {
      // Explain why you need permission and how to update the permission setting
    }
  }
);