Я разрабатываю базовое пакетное приложение для устройств Chrome OS, которое направляет пользователей на внешний веб-сайт.Находясь на веб-сайте, пользователям иногда нужно будет использовать свой микрофон для чтения вместе с текстом, который они видят на экране.К сожалению, я постоянно получаю сообщение об ошибке, сообщающее, что мой медиа-запрос был отклонен.
Сообщения об ошибках появляются в двух разных местах и выглядят следующим образом:
ВРаздел ошибки интерфейса Google Extensions:
<webview>: The permission request for "media" has been denied.
В журнале консоли после проверки окна Chrome, созданного приложением:
Failed to connect js microphone. MicrophonePermissionError: Microphone permission denied (navigator.mediaDevices [NotAllowedError]).
Iпопытался предоставить соответствующие разрешения в манифесте («audioCapture») и включить скрипт, который прослушивает медиа-запросы, сделанные элементом webview.
Это фрагмент кода, который я использовал для прослушивания медиа-запросов и предоставления их при запросе.
background.js
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'media') {
request.allow();
}
});
Вот раздел разрешений моего файла манифеста:
manifest.json
{
"permissions": [
"webview",
"storage",
"audioCapture",
"videoCapture"
],
Я видел ограниченную документацию по этой проблеме, поскольку она относится к упакованным приложениям,и все, что я видел, указывает на то, что я предпринял все соответствующие шаги.