【问题标题】:How to switch between speaker and headphones in iPad applicationiPad应用程序中如何在扬声器和耳机之间切换
【发布时间】:2013-11-27 11:17:30
【问题描述】:

我正在编写一个将音频切换到扬声器的函数:

UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

但是当我尝试使用这个将它切换回耳机时:

UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_None;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

此代码在 iPhone 中运行良好,但在 iPad 中无法从扬声器切换到耳机,任何人都可以指导有什么区别吗?

【问题讨论】:

  • 您不应该停用会话以更改属性,然后重新激活吗?您是否尝试过使用 AVAudioSession API? c-api 已弃用。你在这两个设备上运行的是什么版本的 iOS?
  • 两者都运行 iOS7

标签: ios objective-c ipad avaudiosession


【解决方案1】:

尝试在两者中将UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback 更改为UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-22
    相关资源
    最近更新 更多