Android 13: Что не так с дизайном плеера?

Android 13: Что не так с дизайном плеера?

Как вы помните, в Android 13 Developer Preview 2 компания ввела новый дизайн плеера с большой кнопкой воспроизведения/паузы (речь больше пойдет именно про нее). В Beta 1 к ней добавилась волнистая полоса прогресса, но в Beta 2 этот понравившийся пользователям дизайн кнопки исчез, переехав в нижний ряд к остальным элементам управления. Но, это не совсем так. Дело в том, что Google ввела некоторые изменения относительно компоновки кнопок в системном плеере в Android 13. 

Ниже я привел пример того, как выглядит системный плеер при воспроизведении из Google Chrome, Google Files и Яндекс Музыки (или любого другого сервиса) в Android 13. 

Разница, я думаю, очевидна. Сначала, не разбираясь в вопросе, я думал, что проблема в текущем образе системы, и создал отчет об ошибке на Issue Tracker, но сотрудник компании отклонил мою претензию при этом объяснив, что все работает так, как задумано: 

Все работает так, как задумано. Новое расположение кнопок требует обновления приложений до target T.

И вот в чем дело, приложения Google Chrome и Google Files на текущий момент имеют SDK 33 (Android 13), тогда как YouTube Music и Spotify SDK 31 (Andoird 12), ну а Яндекс Музыка и вовсе SDK 30 (Android 11), в прочем, как и Вконтакте с Telegram.

Обновление 19.07.2022: YouTube Music v15.16.51 обновился до target SDK 33, тем самым теперь он поддерживает новый дизайн плеера Android 13. 


И если сложить приведенную выше демонстрацию и ответ гуглера, все сходится. Для новой кнопки паузы требуется обновление приложения до нового SDK 33 и имплементации класса PlaybackState

Список известных мне приложений с уведомлением плеера и SDK 33:

  • Google Подкасты
  • Files by Google
  • Google Chrome
  • YouTube
  • YouTube Music

Теперь обратимся к документации для разработчиков на сайте Android Developers. Для приложений, предназначенных для Android 13 (уровень API 33) и выше, система выводит элементы управления мультимедиа из действий PlaybackState. Это позволяет системе отображать более богатый набор элементов управления, которые технически совместимы между телефонами и планшетными устройствами, а также соответствуют тому, как элементы управления мультимедиа отображаются на других платформах Android, таких как Android Auto и Android TV.

До Android 13 система отображала до пяти действий из уведомления MediaStyle в порядке их добавления. В компактном же режиме - например, в свернутой панели быстрых настройках - отображалось до трех действий, заданных с помощью setShowActionsInCompactView().

А как мы помним в Android 13 в портретной ориентации компактного режима не осталось. Теперь он присутствует только в альбомной ориентации. В новой версии ОС отображается до пяти кнопок действий в зависимости от PlaybackState. В компактном режиме отображаются только первые три кнопки действий.

Для приложений, не ориентированных на Android 13, или приложений, не включающих в себя PlaybackState, система будет отображать элементы управления на основе списка Action, добавленного в уведомление MediaStyle, как описано выше.

А нам, обычным пользователям, остается только ждать и надеяться на добросовестность разработчиков популярных приложений. Хотя, судя по темпам актуализации SDK в приложения на российском сегменте, ждать придется очень долго.