0

在我的网页中,有一个屏幕共享流,参数如下:

{
    audio: false,
    video: mandatory {
               chromeMediaSource: 'desktop',
               chromeMediaSourceId: IM.screenSourceId
              ...
           }
     ...
}

我的 Chrome 扩展在后台脚本中包含以下代码:

desktop_id = chrome.desktopCapture.chooseDesktopMedia (session, port.sender.tab, onAccessApproved);

当点击页面上的“取消”按钮时,会触发后台脚本中的监听函数:

chrome.desktopCapture.cancelChooseDesktopMedia (desktop_id);

看到chrome://extensions的确实是一个整数值。console.logdesktop_id1

但是好像不行,我试了很多Chrome版本还是不行,取消屏幕共享怎么办?

4

1 回答 1

2

chrome.desktopCapture.cancelChooseDesktopMedia如果选择器对话框仍然打开,则关闭它。在用户选择录制目标后,它不会停止媒体流。

如果要停止录屏,请调用.stop()媒体流的方法。例如

navigator.webkitGetUserMedia({
    audio: false,
    video: {
        mandatory: {
            chromeMediaSource: 'desktop',
            chromeMediaSourceId: IM.screenSourceId
        }   
    }   
}, function onSuccess(stream) {
    // Example: end the recording after 10 seconds.
    setTimeout(function() {
        stream.stop();
    }, 10000);
}, function onError() {
    // Handle error
}); 
于 2015-02-09T08:31:17.093 回答