Можно ли программно отключить звук iPhone?

Я видел методы, позволяющие убедиться, что приложение учитывает переключатель отключения звука, но можно ли настроить iPhone на отключение звука (без звука из каких-либо приложений) с помощью SDK?

Ответов (5)

Решение

Нет.

Приложения, разработанные с использованием официального SDK, не могут изменять (а в большинстве случаев даже не могут получить доступ) общесистемные настройки.

Технически возможно изменить громкость системы через частный AVSystemController класс в Celestial.framework, но это не позволит вашему приложению получить одобрение Apple.

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

См. Как отключить системные звуки iOS

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

Что бы я сделал, если бы приложение отключило звук на iPhone, а я не знал об этом? Он не может физически переместить переключатель отключения звука на боковой стороне телефона, так что это не будет совпадать, и мне пришлось бы выяснить а) что на телефоне был отключен звук и б) как включить его без переключателя.

Я могу изменить громкость с помощью AVSystemController, он установлен на минимум 0,06x. Есть ли класс / API для его полного отключения? toggleActiveCategoryMuted не работает