Звук

Пользователи управляют звуком с помощью кнопок регулировки громкости, выключателя звука, элементов управления наушников и ползунка громкости на экране. Многие сторонние аксессуары также включают в себя элементы управления звуком. Звук может выводиться через внутренние или внешние динамики, наушники и даже по беспроводной связи через устройство с поддержкой AirPlay или Bluetooth. Независимо от того, является ли звук основным аспектом работы вашего приложения или дополнением, вам нужно понимать, какие ожидания у пользователей относительно звука, и соответствовать им.

Тишина

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


Громкость

Пользователи ожидают, что при использовании кнопок физического устройства или экранного слайдера, изменения громкости будут влиять на всю звуковую систему в целом, включая музыку и звуковые эффекты в приложении. Единственным исключением является громкость звонка, которая всегда настраивается отдельно при отсутствии активного воспроизведения звуков.

Наушники

Пользователи используют наушники, чтобы освободить руки и услышать звук в частном порядке. При подключении наушников люди хотят, чтобы звук был перенаправлен без перерыва, автоматически. Отключая наушники, они ожидают, что воспроизведение будет приостановлено немедленно.

Как сделать отличную работу со звуком в приложении

Регулируйте уровни громкости при необходимости автоматически. Ваше приложение может регулировать относительные, независимые уровни громкости, чтобы в нем было отличное сочетание звука. Тем не менее, окончательный уровень всегда должен регулироваться системными настройками.

Разрешите изменение способа вывода звука, когда это необходимо. Часто пользователи выбирают другое устройство вывода звука. Например, они могут слушать музыку через стереосистему в гостиной, автомобильное радио или Apple TV. Поддерживайте эту возможность, если нет веских причин этого не делать.

Используйте предоставляемый системой способ регулировки громкости, чтобы разрешить функцию изменения звука. Лучший способ обеспечить управление интерфейсом для настройки звука - использовать вид громкости. Это настраиваемое представление, которое включает ползунок уровня громкости и содержит элемент управления для перенаправления аудиовыхода. Для руководства разработчика см. MPVolumeView.

Используйте системные звуковые сервисы для коротких звуков и вибраций. Для руководства разработчика посмотрите Системные звуковые сервисы.

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

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

Сообщайте другим приложениям о моменте, когда ваше завершает воспроизведение временного аудио. Если ваше приложение может временно прервать звук других приложений, оно должно соответствующим образом пометить аудиосеансы, чтобы другие приложения получали уведомление о том, когда можно будет возобновить работу. Для руководства разработчика см. константу AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation в AVFoundation.

Отвечайте на элементы управления звуком только тогда, когда это целесообразно. Пользователи могут управлять воспроизведением звука за пределами интерфейса вашего приложения, например в Центре управления или с помощью элементов управления на наушниках, независимо от того, находится ли ваше приложение на переднем плане или в фоновом режиме. Если ваше приложение активно воспроизводит звук в чистом контексте, связанном со звуком или подключено к устройству с поддержкой AirPlay сделайте так, чтобы оно могло реагировать на элементы управления звуком. В противном случае, ваше приложение не должно останавливать звук другого, который может воспроизводиться при активации элемента управления.

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