更改设备音量

Posted

技术标签:

【中文标题】更改设备音量【英文标题】:Changing Device Volume 【发布时间】:2012-02-10 12:02:13 【问题描述】:

我正在开发一个 Iphone/Ipod 应用程序,我在其中使用 AVAudioPlayer。我正在通过滑块更改音频音量,该滑块工作正常,但现在我必须通过按下设备加号和减号按钮来更改(增加/减少)滑块,而不是自己更改滑块。当我按下设备的加号/减号按钮时,不知道控制在哪里?有谁知道,欢迎帮忙。

【问题讨论】:

【参考方案1】:

如何访问硬件音量控制器?

全球系统体积,包括您的应用程序的体积,由 iPhone OS 处理,应用程序无法访问。

这是链接,请阅读here 希望对你有帮助:)

【讨论】:

请下载。 oleb.net/blog/2009/07/…【参考方案2】:

这个问题对我来说并不完全清楚,但您似乎想要在系统音量发生变化时收到通知?如果是这样,这是可能的,我希望我能正确理解你的问题。以下怎么样:

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

    [[NSNotificationCenter defaultCenter]
     addObserver:self
     selector:@selector(volumeChanged:)
     name:@"AVSystemController_SystemVolumeDidChangeNotification"
     object:nil];


- (void)volumeChanged:(NSNotification *)notification

    float volume =
    [[[notification userInfo]
      objectForKey:@"AVSystemController_AudioVolumeNotificationParameter"]
     floatValue];

    // Do stuff with volume

我是从 here 那里得到的,Sandy 的回答。

【讨论】:

感谢您的回复,但我已经访问过了。我只想知道按下设备上的加号/减号按钮后我可以在哪里收到响应。 你好@paul,你能告诉我..这里的音量是通过按钮改变的吗?音频播放器音量的设备音量?【参考方案3】:

大满贯,谢谢大家!我已经搜索过了。这对 MPMusicPlayer 有效,但对 AVAudioPlayer 无效。 你可以做到的。

MPMusicPlayerController *_musicController = [MPMusicPlayerController iPodMusicPlayer];

但对于 AVAudioPlayer 来说不是这个,

AVAudioPlayer *_audioController = [AVAudioPlayer iPodMusicPlayer];

【讨论】:

以上是关于更改设备音量的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式更改 iOS 设备音量?

iOS:更改设备音量

iOS 7:不推荐使用 MPMusicPlayerController 音量。现在如何更改设备音量?

如何在不影响设备音量的情况下使用 MPMusicPlayerController 更改音量

如何使用 android seekbar 更改 chrome cast 设备音量

如何在iOS上获得音量级别和音量更改通知?