与应用程序相关的设备的声音控制

Posted

技术标签:

【中文标题】与应用程序相关的设备的声音控制【英文标题】:Sound controls of device related to app 【发布时间】:2012-02-10 11:48:46 【问题描述】:

在我的应用程序中,我有一些声音。为了使用这些声音,我使用了 AVFoundation、MediaPlayer、AudioToolbox 框架。应用程序在设备中运行良好。 但我面临的问题是当我降低或增加我的设备音量时,应用程序声音不会受此影响。我想通过控制设备音量来控制我的应用程序声音的音量。 谁能告诉我我该怎么做?请帮忙。提前致谢。

【问题讨论】:

【参考方案1】:
- (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

您是否使用 AudiosessionSetActive 开始音频会话

并建议您首先使用 Apple 提供的示例代码(我使用“aurioTouch”)。也许它可以帮助你找出发生了什么。

【讨论】:

以上是关于与应用程序相关的设备的声音控制的主要内容,如果未能解决你的问题,请参考以下文章

如何同时在多个设备中播放声音

Android 多种声音通知

来自麦克风的声音与来自扬声器的声音

当设备在android中收到来电时如何播放声音?

删除侦听器类不会停止与 Jquery Javascript 相关的声音事件

《QT语音》无法说话没有声音的解决办法