В основном то, что я пытаюсь сделать, это проверить, предоставлен ли доступ к микрофону или нет, если нет, показать диалоговое окно «Безопасность» и позволить пользователю выбрать «Разрешить» доступ в диалоговом окне, чтобы в следующий раз пользователь нажал кнопку записи , это не будет отображаться в поле безопасности, и запись должна работать немедленно.
В некотором обработчике событий buttonClick
я помещаю этот код, чтобы проверить, включен ли доступ к микрофону или нет
var mic:Microphone = Microphone.getMicrophone();
if (mic == null) {
return;
}
if (mic.muted) {
Security.showSettings(SecurityPanel.PRIVACY);
return;
}
//... Start recording using a library
Если доступ к микрофону запрещен (или отключен) в начале, поле «Безопасность» будет отображаться при выполнении
buttonClick
обработчика событий, что ожидается;После того, как пользователь выберет «Разрешить», что сделает
mic.muted = false
, поэтому, когда пользователь снова нажмет кнопку, поле не появится, что также ожидается;Однако иногда функция записи в библиотеке больше не работает. иногда это все равно будет работать, но если вы щелкните правой кнопкой мыши приложение Flash и выберите «Настройка», чтобы открыть окно «Безопасность», и нажмите «Запретить», а затем повторите шаги 1 и 2, вы всегда будете видеть поведение на шаге 3. : функция записи не работает.
Я проверил исходный код библиотеки для записи, он также использует var mic:Microphone = Microphone.getMicrophone();
для получения и настройки микрофона.
Пожалуйста помоги.