ios - Twilio 客户端语音通话扬声器开/关问题

标签 ios objective-c twilio twilio-click-to-call

我正在使用Twilio client用于通话的语音通话服务。

在这里,我遇到了斯皮克开/关功能的问题。我可以将通话静音/取消静音,但无法打开/关闭扬声器。我有两个功能的相同实例。我还检查了他们的演示项目基本电话,该扬声器开/关正在工作,我在我的项目中做了同样的事情,但无法做同样的事情。

这是我的代码:

if(isSpeaker == NO)
{
     isSpeaker=YES;
     [self.phone setSpeakerEnabled:YES];
}
else{
     isSpeaker=NO;
     [self.phone setSpeakerEnabled:NO];
}

self.phone 是 BasicPhone(他们的调用管理器类)的共享实例,我正在 > iOS 9 演示和我的项目中测试应用程序。

最佳答案

我已在 iOS 上使用此代码成功启用/禁用扬声器。它不使用 Twilio 设备,并且在某种程度上特定于 React Native,但每个功能的核心应该可以工作:

RCT_EXPORT_METHOD(setSpeakerPhoneOn) {
AVAudioSession *session = [AVAudioSession sharedInstance];
NSError *error;

[session overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker error:&error];
}

RCT_EXPORT_METHOD(setSpeakerPhoneOff) {
AVAudioSession *session = [AVAudioSession sharedInstance];
NSError *error;

[session overrideOutputAudioPort:AVAudioSessionPortOverrideNone error:&error];
}

关于ios - Twilio 客户端语音通话扬声器开/关问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37893672/

相关文章:

ios - 我如何使用 Swift 格式化这些数据以便后端可以读取它?

ios - GPUImage - 自定义直方图生成器

ios - 如何以编程方式从类加载 Storyboard?

ios - 为什么在IOS8中使用coreBluetooth connectPeripheral没有调用delegate方法

ios - 使用 SwiftyJson 解析 Json

objective-c - 如何在 drawAtPoint 中更改 NSString 的颜色

ios - 多个 UIView 的动画与 UIBezierPath

android - 使用 WebRTC 在 Android 上进行 P2P 视频流

twilio - 如何在 Twilio 中检索使用记住功能存储的项目

javascript - Laravel 5.5 jQuery 3.3.1 ajax 不是函数