を介して画面またはウィンドウへのメディアストリームをリクエストできますnavigator.mediaDevices.getDisplayMedia()
。ただし、これにより、使用するキャプチャの種類を決定するようにすぐにユーザーに求められます。ブラウザ/プラットフォームがスクリーンキャプチャをサポートしているかどうかを確認する必要があります。
もちろん、をチェックすることは可能ですが、これは'getDisplayMedia' in navigator.mediaDevices
APIがブラウザーでサポートされているかどうかを示すだけです。特に、FFおよびAndroid上のChromeでは、APIが定義されており、を呼び出すことができますgetDisplayMedia()
が、常に即座にNotAllowedError
エラーが返されます(これは予期されることです:caniuseによると、モバイルブラウザーはまだサポートしていませんgetDisplayMedia
)。
次にチェックしてみましたnavigator.mediaDevices.getSupportedConstraints()
。ただし、モバイルFFはデスクトップFFとまったく同じオブジェクトを返します。特に、navigator.mediaDevices.getSupportedConstraints().mediaSource
あるtrue
両方の場合において。最後に、から返されたデータnavigator.mediaDevices.enumerateDevices()
も役に立ちません。どうしても解釈できないデバイスとグループIDしか取得しません(そうですか?)
経由の画面キャプチャgetDisplayMedia
がサポートされているかどうかを事前に検出することはできますか?
(注:このQ&Aはかなり類似しているように見えますが、それについてgetUserMedia
であり、すでにかなり古いものです)
getDisplayMedia
モバイルでは使用できません」に関するものではありません。それで結構です。サポートされているかどうかを確認したいだけです。