iOS野生动物园-getUserMedia问题

时间:2018-06-27 18:21:12

标签: javascript ios safari webrtc getusermedia

我有使用Angular编写的webrtc应用程序。 iOS出现问题。我无法从相机中获取信息流。不可能。 浏览器甚至没有询问使用相机/麦克风的权限。

有一个用于收集摄像机流的代码。我认为与webrtc示例中提供的相同。我不知道这段代码有什么问题。

private streamConstraints = {
   audio: true,
   video: true
  };



  public getStreamFromCamera(constraints = this.streamConstraints): Promise<MediaStream> {
    const navig = this.initNavigator();
    return new Promise((resolve, reject) => {
      navig.getUserMedia(constraints,
        (stream) => resolve(stream),
        (error) => reject(error)
      );
    });


  private initNavigator() {
    const navig = <any>navigator;
    if (!navig.mediaDevices) {
      console.log('Tools@MediaDevices are not implemented in browser');
      navig.mediaDevices = {};
    }

    if (!navig.mediaDevices.getUserMedia) {
      navig.mediaDevices.getUserMedia = function (constraints) {
      const getUserMedia = navig.webkitGetUserMedia || navig.mozGetUserMedia;
      if (!getUserMedia) {
        return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
      }
      return new Promise(function (resolve, reject) {
        getUserMedia.call(navig, constraints, resolve, reject);
      });
    };
    }
    return navig;
  }

0 个答案:

没有答案