iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在呼叫时启用和禁用Xcode ios 8.1中的扬声器大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我需要在从app调用时启用扬声器.我可以成功启用它,但我无法禁用它. 我正在使用这种方法: [[UIDevice currentDevice] setProximitymonitoringEnabled:NO]; NSLog(@"%d",enablE); UInt32 route; route = enable ? kAudioSessionOverrideAudioRoute_Speaker
我需要在从app调用时启用扬声器.我可以成功启用它,但我无法禁用它.

我正在使用这种方法

[[UIDevice currentDevice] setProximitymonitoringEnabled:NO];
NSLog(@"%d",enablE);

UInt32 route;
route = enable ? kAudioSessionOverrideAudioRoute_Speaker :
kAudioSessionOverrideAudioRoute_None;

AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof(routE),&routE);

提前致谢.

解决方法

AudioSessionSetProperty已弃用.
https://developer.apple.com/library/ios/documentation/audiotoolbox/reference/audiosessionservicesreference/index.html#//apple_ref/c/func/AudioSessionSetProperty

- (void)setAudioOutputSpeaker:(BOOL)enabled
{
    AVAudioSession *session =   [AVAudioSession sharedInstance];
    NSError *error;
    [session setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
    [session setMode:AVAudioSessionModeVoiceChat error:&error];
    if (enabled) // Enable speaker
    {
        [session overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker error:&error];
    }
    else // Disable speaker
    {
        [session overrideOutputAudioPort:AVAudioSessionPortOverrideNone error:&error];
    }
    [session setActive:YES error:&error];
}

大佬总结

以上是大佬教程为你收集整理的在呼叫时启用和禁用Xcode ios 8.1中的扬声器全部内容,希望文章能够帮你解决在呼叫时启用和禁用Xcode ios 8.1中的扬声器所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。