Chúng tôi có thể yêu cầu một luồng phương tiện đến màn hình hoặc cửa sổ thông qua navigator.mediaDevices.getDisplayMedia()
. Tuy nhiên, điều này ngay lập tức nhắc người dùng quyết định sử dụng kiểu chụp nào. Tôi cần kiểm tra xem trình duyệt / nền tảng có hỗ trợ chụp màn hình hay không.
Tất nhiên, có thể kiểm tra 'getDisplayMedia' in navigator.mediaDevices
, nhưng điều này chỉ cho chúng tôi biết API có được trình duyệt hỗ trợ hay không. Cụ thể, trên FF và Chrome trên Android, API được xác định và tôi có thể gọi getDisplayMedia()
, nhưng nó luôn trả về NotAllowedError
lỗi ngay lập tức ( theo dự kiến: theo caniuse , các trình duyệt di động chưa hỗ trợ getDisplayMedia
.)
Tiếp theo, tôi đã thử kiểm tra navigator.mediaDevices.getSupportedConstraints()
. Tuy nhiên, FF di động của tôi trả về cùng một đối tượng như FF máy tính để bàn của tôi. Đặc biệt, navigator.mediaDevices.getSupportedConstraints().mediaSource
là true
trong cả hai trường hợp. Cuối cùng, dữ liệu được trả về navigator.mediaDevices.enumerateDevices()
cũng không giúp tôi. Tôi chỉ nhận được một ID thiết bị và nhóm mà tôi không thể diễn giải theo bất kỳ cách nào (phải không?).
Có thể phát hiện xem có chụp màn hình qua hay không getDisplayMedia
được hỗ trợ trước?
( Lưu ý : Câu hỏi và trả lời này có vẻ khá giống nhau, nhưng getUserMedia
đã cũ và đã khá cũ)
getDisplayMedia
trên thiết bị di động". Điều đó là tốt cho tôi. Tôi chỉ muốn kiểm tra xem nó có được hỗ trợ hay không .