Это предполагаемое поведение в соответствии с рекомендациями Apple.
От Руководство по интерфейсу пользователя Apple iOS :
Пользователи переключают свои устройства в режим без звука, когда они хотят:
- Избегайте прерывания неожиданными звуками, такими как мелодии телефона и звуки входящих сообщений
- Избегайте слышать звуки, которые являются побочными продуктами действий пользователя, такие как клавиатура или другие звуки обратной связи, случайные звуки или звуки запуска приложения
- Избегайте слышать звуки игры, которые не важны для игры, такие как звуковые эффекты и звуковые дорожки
Специально для игр:
Сценарий 3: игра, которая позволяет пользователям управлять персонажем при выполнении различных задач. Вы предоставляете:
- Различные игровые эффекты
- Музыкальный саундтрек
В этом приложении звук значительно улучшает взаимодействие с пользователем, но не является обязательным для основной задачи. Кроме того, пользователи, вероятно, оценят возможность играть в игру молча или во время прослушивания песен в их музыкальной библиотеке вместо саундтрека к игре.
Глубже в Аудио рекомендации по типу приложения Apple рекомендует использовать AVAudioSessionCategoryAmbient или AVAudioSessionCategorySoloAmbient категории, которые определяются как:
- AVAudioSessionCategoryAmbient / AVAudioSessionCategorySoloAmbient
[...]
Ваш звук заглушается блокировкой экрана и переключателем Silent (так называемый переключатель Ring / Silent на iPhone).
Соответственно, для приложений с типом воспроизведения рекомендуется категория AVAudioSessionCategoryPlayback, определенная следующим образом:
- AVAudioSessionCategoryPlayback
[...]
Категория для воспроизведения записанной музыки или других звуков, которые являются центральными для успешного использования вашего приложения.
При использовании этой категории звук вашего приложения продолжается с переключателем «Без звука», установленным в бесшумный режим или при блокировке экрана.
Пока разработчики следуют рекомендациям, это ожидаемое поведение, если Apple не решит изменить то, как категории функционируют в операционной системе.