iOS: изменить громкость устройства - PullRequest
24 голосов
/ 01 февраля 2011

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

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

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

Ответы [ 3 ]

32 голосов
/ 04 мая 2012

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

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

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

23 голосов
/ 25 августа 2011

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

  MPMusicPlayerController* musicPlayer = [MPMusicPlayerController iPodMusicPlayer];
  musicPlayer.volume = 1; // device volume will be changed to maximum value
15 голосов
/ 01 февраля 2011

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

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

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

...