用webrtc分享桌面,或者录制屏幕时会弹出一个悬浮窗口,如下图所示:
有时用户会无意间点击停止共享,那么需要我们做相应的监听事件。
处理
webrtcc提供了一个track的结束事件
navigator.mediaDevices.getDisplayMedia().then(stream => {
//监听手动点击“停止分享”
stream.getVideoTracks()[0].onended = ()=>{
//监听以后的处理逻辑……
}
}).catch(e => {
console.error(e)
})
靠程序点击停止
const tracks = stream.getTracks() // stream ==> 屏幕分享的MediaStream
tracks.forEach( track => track.stop() )