我想让用户共享他的屏幕,我使用 getDisplayMedia() 让用户开始共享,它让他选择整个屏幕或 chrome ...等。 所以我的问题是:我是否可以让用户始终选择整个屏幕,例如不给他其他类型的共享选项,例如窗口......比如对它施加约束或其他东西 我尝试了显示表面="监视器",但它不起作用
你可以做变通办法。
您可以检查displaySurface
,如果未monitor
(整个屏幕),则可以拒绝承诺,并且在拒绝处理程序中,您可以停止并重新开始。
navigator.mediaDevices
.getDisplayMedia()
.then((strm) => {
let displaySurface = strm.getVideoTracks()[0].getSettings().displaySurface;
if (displaySurface !== 'monitor') {
throw 'Selection of entire screen mandatory!';
}
})
.catch((err) => console.error(err));//Here you can stop and start again