API медиасеанса на iOS 16, требует ли он имени/URL-адреса веб-сайта?IOS

Программируем под IOS
Ответить
Anonymous
 API медиасеанса на iOS 16, требует ли он имени/URL-адреса веб-сайта?

Сообщение Anonymous »

Я экспериментирую с веб-приложением PWA, созданным в Vue, и добавил его в качестве закладки на главный экран на свой iPhone под управлением iOS 16.
Когда я воспроизвожу аудио файл в приложении, я создаю экземпляр медиа-сеанса, который выглядит следующим образом:

Код: Выделить всё

if ("mediaSession" in navigator) {
navigator.mediaSession.metadata = new MediaMetadata({
title: this.currentSong.title,
artist: this.currentSong.artist,
album: this.currentSong.album,
artwork: [
{
src: "https://dummyimage.com/96x96",
sizes: "96x96",
type: "image/png",
},
...
],
});
navigator.mediaSession.setActionHandler("nexttrack", () => {
this.nextSong();
});
navigator.mediaSession.setActionHandler("previoustrack", () => {
this.prevSong();
});
navigator.mediaSession.setActionHandler("seekto", (details) => {
this.emitter.emit("seek", details.seekTime);
});
navigator.mediaSession.setActionHandler("play", () => {
this.togglePlay();
});
navigator.mediaSession.setActionHandler("pause", () => {
this.togglePlay();
});
}
Ни один из методов, использованных в этом документе, не имеет отношения к моему вопросу, он больше связан с тем, как iOS обрабатывает предоставленную мной информацию.
Всякий раз, когда Я создаю новые MediaMetadata и указываю название, исполнителя и т. д. Источник или имя приложения исчезают из виджета медиаплеера на экране блокировки. Нажимая на обложку плеера, я перенаправляюсь к тому, что кажется первым лучшим PWA на моем устройстве, которое может найти iOS, почти как если бы он просто брал список всех установленных приложений PWA и просто выбирал первое. Конечно, было бы более ожидаемо, что iOS направит меня к приложению PWA, из которого поступает звук.
Если я ничего не предоставлю через API сеанса мультимедиа и не закомментирую код выше, медиаплеер, кажется, по крайней мере понимает, откуда исходит звук, поскольку заголовок веб-сайта написан, и я могу щелкнуть обложку, и он перенаправляет меня на правильный PWA, но, очевидно, без каких-либо метаданных, поскольку у меня нет не предоставил.
Я также заметил, что создается один обработчик действий, например navigator.mediaSession.setActionHandler("nexttrack", () => {...}), сбросит все действия в плеере, поэтому кнопка воспроизведения будет, например, деактивирована, предоставляя только один обработчик действий. Я подумал, есть ли что-то подобное с предоставлением метаданных, что все свойства по умолчанию обнуляются или что-то подобное?
Я не видел такого поведения в iOS 15, поэтому мне просто интересно, если это это ошибка iOS 16 или мне нужно предоставить какие-либо дополнительные свойства с экземпляром MediaMetadata?

Подробнее здесь: https://stackoverflow.com/questions/762 ... of-website
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»