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ề NotAllowedErrorlỗ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().mediaSourcelà truetrong 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ũ)
getDisplayMediatrê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 .