Подтвердить что ты не робот

IOS: изменение объема устройства

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

У меня есть настольная версия приложения iOS, и устройство будет в некоторой степени контролироваться по сети. Одна из вещей, которую я хочу разрешить пользователю, - это изменить громкость устройства, а затем воспроизвести звук. Это может помочь, если вы снова потеряете свой iPhone в трещине на своем диване, но не можете его найти.

Есть ли способ, которым вы можете это сделать, если Apple не рассердится?

4b9b3361

Ответ 1

Использование iPodMusicPlayer повлияет и на реальный уровень громкости iPod. Если вы хотите этого избежать, используйте это:

#import <MediaPlayer/MediaPlayer.h>
// ...
MPMusicPlayerController *musicPlayer = [MPMusicPlayerController applicationMusicPlayer];
musicPlayer.volume = 1.0f; 

Как пользователь holex правильно упомянул свойство volume в MPMusicPlayerController устарел в iOS 7.

Ответ 2

Вы можете использовать небольшой трюк:

  MPMusicPlayerController* musicPlayer = [MPMusicPlayerController iPodMusicPlayer];
  musicPlayer.volume = 1; // device volume will be changed to maximum value

Ответ 3

Вы не можете изменять объем устройства программно, однако MPVolumeView (ползунок громкости) есть, чтобы изменить громкость устройства но только через взаимодействие с пользователем.

MPVolumeView - это элемент управления на панели инструментов, вам нужно добавить MediaPlayer.framework в ваш проект, тогда MPVolumeView будет отображаться в панели инструментов в построителе интерфейса.

Изменить 1: MPVolumeView использует том устройства, который также используется для громкости звонка. AVAudioPlayer есть, если вам нужен уровень уровня приложения. В этом случае вы можете использовать свойство объем, чтобы программным образом настроить объем приложения (а не объем устройства). Тем не менее, вы можете использовать UISlider, чтобы получить объемный ввод от пользователя и установить на ваш AVAudioPlayer