Аудиоэлемент проигрывает обещание отклонения, даже когда аудио контекст находится в рабочем состоянии - PullRequest
0 голосов
/ 05 февраля 2020

Я прилагаю скриншот для справки, чтобы получить более подробное представление о проблеме, с которой я сталкиваюсь .. Вид ада.

Я хорошо осведомлен о политике автоигры и прошел через возможные согласования, которые включают взаимодействие с пользователем. Кроме того, я не люблю показывать пользователю экран или кнопку, чтобы заставить его щелкнуть, никогда, я не хочу этого.

Я разрабатываю плагин для wordpress и имею функцию микрофона, которая может прикрепляться к textbpx на любом Сайт WordPress, пользователь нажимает на него (взаимодействие с пользователем) приходит.

Я также прочитал, что мне нужно возобновить приостановленный аудио-контекст, который я делаю, и, как вы можете видеть на скриншоте, состояние аудио-контекста "работает" "до и после воспроизведения аудиоэлементов mathod.

Я использую аудиоэлемент, созданный с помощью конструктора Audio ().

Примечание : снимок экрана - фотография системы ma c, я отлаживаю iphone xr с помощью USB-кабеля.

Может кто-нибудь помочь мне или просветить меня в том, что я делаю неправильно, или есть какие-то технические ограничения. Error console screenshot

1 Ответ

0 голосов
/ 11 февраля 2020

Вздох! после того, как неделя длилась, черт возьми, наконец-то мне удалось заставить все работать.

Чтобы дать общее представление о решении, позвольте мне сначала описать общее представление о рабочем процессе, который имеет проблемы на iOS Sfari.

Проблематично c Рабочий процесс

clickHandler -> Создание AudioContext -> Воспроизведение аудио с использованием аудиоэлемента.

Все ауд ios с последующим этим рабочим процессом с треском провалился в обещании 'play'.

Решение, которое мне помогло

clickHandler -> Воспроизведение звука с использованием звука element -> Создание AudioContext -> Воспроизведение аудио с использованием аудиоэлемента.

Интересное решение, которое сработало для меня, заключается в том, что вы должны воспроизводить аудио с использованием аудиоэлемента в качестве первой строки код в «clickHandler». Без сомнения, обещание все еще не выполнено, но последующие aud ios воспроизводятся.

Кроме того, я создавал новый аудиоэлемент для каждого нового аудиоисточника, который должен быть воспроизведен, что было неверно, поскольку политика автоматического воспроизведения, наложенная на «на элемент» базис. Таким образом, вместо создания нового аудиоэлемента для каждого источника, я просто создаю его один раз при загрузке страницы (или любой другой, подходящий для вас как одноразовое создание), и всякий раз, когда я хочу воспроизвести другой аудиофайл, я просто меняю свойство '.sr c' /attribute.

Так вот, как это сработало для меня. Я должен упомянуть, что в течение недели длился ад, ранее отвеченные вопросы здесь и их решения, определяющие c, направляли свет, который дал мне новую перспективу в поиске решения. Также очень помогли статьи о inte rnet, webkit, chrome, документации Apple по политике Auto play.

...