2011-02-01 4 views
23

기기의 볼륨을 변경하는 방법이 있습니까? 몇 가지 앱이이를 수행하는 것을 보았습니다.iOS : 기기 볼륨 변경

데스크톱 버전의 iOS 앱이 있으며 네트워크를 통해 기기를 어느 정도 제어 할 수 있습니다. 사용자가 할 수있게하려는 일 중 하나는 장치 볼륨을 변경 한 다음 소리를 재생하는 것입니다. 이것은 소파에서 균열이 생겨도 iPhone을 잃어 버렸지 만 찾을 수는 없습니다.

Apple이 화내지 않으면 어떻게 할 수 있습니까?

답변

32

합니다. 당신이를 피하려면이를 사용

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

을 사용자 holex으로 제대로 MPMusicPlayerController에서 속성 volume 언급은 deprecated in iOS 7입니다.

+1

위의 솔루션은 저에게 효과적이었습니다. 감사. – shatthi

+5

'MediaPlayer.framework'를 타겟 연결 단계에 추가하고, 소스 파일에'#import '를 추가하십시오. –

+0

이것은 나를 도와줍니다. 많이 감사합니다. – Shivaay

14

기기 볼륨을 프로그래밍 방식으로 변경할 수는 없지만 MPVolumeView (볼륨 슬라이더)은 기기 볼륨을 변경하지만 사용자 상호 작용을 통해서만 가능합니다.

MPVolumeView는 도구 상자의 컨트롤이므로 MediaPlayer.framework을 프로젝트에 추가해야 MPVolumeView가 인터페이스 작성기의 도구 상자에 표시됩니다.

편집 1 : MPVolumeView는 볼륨을 울리는데도 사용되는 장치 볼륨을 사용합니다. 신청 레벨 볼륨을 원하면 AVAudioPlayer이 있습니다. 이 경우 볼륨 속성을 사용하여 프로그래밍 방식으로 응용 프로그램 볼륨 (장치 볼륨 아님)을 설정할 수 있습니다. 그러나 사용자의 볼륨 입력을 얻을 UISlider 컨트롤을 사용하여 AVAudioPlayer

+0

또한 iOS 4.2에서만 사용할 수 있으므로 사용하기 전에 버전/클래스 가용성 확인을 포함시켜야합니다. –

+0

Nopes, 표시/숨기기에 새 속성 NOS가 추가되었습니다. 새 속성은 iOS 4.2에서만 사용할 수 있지만 iOS3.2에서는 사용하고 있습니다 (iOS 3.2 이상). http : // itunes.apple.com/us/app/msiradio/id399408266?mt=8 –

+0

흠, 그것은 일종의 좌절입니다. 벨소리 또는 시스템 볼륨과 다른 볼륨으로 사운드를 재생할 수 있습니까? 이미 상당수의 앱에서 이미 사용하는 것으로 나타났습니다. –

23

로 설정할 수 있습니다 당신은 약간의 트릭 사용할 수 있습니다 iPodMusicPlayer뿐만 아니라 설정을 실제 아이팟 볼륨에 영향을 미칠 사용

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

와우. 그것은 실제로 효과가있었습니다. 시원한! – JohnK

+0

IOSM +의 iPodMusicPlayer 대신 systemMusicPlayer 사용 – Kevin

+0

'volume' 속성은 iOS 7.0부터 사용되지 않습니다. [여기] (https://developer.apple.com/library/ios/documentation/MediaPlayer/Reference/MPMusicPlayerController_ClassReference/#//apple_ref/occ/instp/MPMusicPlayerController/volume)에서 확인할 수 있습니다. – Alex