iOS:更改设备体积

iOS:更改设备体积

问题描述:

有没有方法可以更改设备的体积?我见过几个应用程序。iOS:更改设备体积

我有一个iOS应用程序的桌面版本,该设备将能够在一定程度上通过网络进行控制。我想让用户做的一件事是更改设备音量,然后播放声音。如果你再次将你的iPhone放在沙发上的裂缝中,这可能会有所帮助,但无法找到它。

有什么办法可以在苹果不生气的情况下做到这一点?

使用iPodMusicPlayer会影响实际的iPod的音量设置为好。如果你想避免这种情况,使用此:

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

当用户在holex正确MPMusicPlayerController提到的财产volumedeprecated in iOS 7

您不能以编程方式更改设备音量,但是MPVolumeView(音量滑块)用于更改设备音量,但只能通过用户交互。

MPVolumeView是工具箱中的一个控件,需要在项目中添加MediaPlayer.framework然后MPVolumeView将显示在界面生成器的工具箱中。

编辑1: MPVolumeView使用也用于振铃音量的设备音量。 AVAudioPlayer是否存在,如果你想要应用程序级别的音量。在这种情况下,您可以使用属性以编程方式设置您的应用程序音量(不是设备音量)。但是,您可以使用UISlider控制,以获得来自用户量输入和设置您的AVAudioPlayer

+0

另请注意,它仅适用于iOS 4.2,因此您必须在使用它之前包含版本/类可用性检查。 – 2011-02-01 06:32:16

+0

Nopes,一个新的属性添加到它可见/隐藏它,新的属性只在iOS 4.2中可用,但是我已经在iOS3.2中使用它,这里我使用它(iOS 3.2或更高版本),http:// itunes.apple.com/us/app/msiradio/id399408266?mt=8 – 2011-02-01 06:45:07

+0

嗯,这是一种挫折。我能够以不同于铃声或系统音量的音量播放声音吗?我已经看到了很多应用程序。 – 2011-02-01 15:23:45

你可以用一个小技巧:

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