系统提供的呼叫屏幕上扬声器按钮行为异常

2023-12-27

我们使用 CallKit 和 PortSIP 编写 VoIP 应用程序,这里的问题仅在 iOS 11.2.x 上重现。 当用户点击 CallKit 提供的屏幕系统上的扬声器按钮时,会启用扬声器,但图标仍处于禁用状态。如果用户再次点击,系统也会打开扬声器并忘记按钮。要禁用扬声器,用户应点击按钮两次。有人遇到过这个bug吗?你的解决方案是什么? (:

Thanks.


    RTCDispatcher.dispatchAsync(on: RTCDispatcherQueueType.typeAudioSession) {
        let audioSession = RTCAudioSession.sharedInstance()
        audioSession.lockForConfiguration()
        let configuration = RTCAudioSessionConfiguration.webRTC()
        configuration.categoryOptions = [AVAudioSessionCategoryOptions.allowBluetoothA2DP,AVAudioSessionCategoryOptions.duckOthers,
                                         AVAudioSessionCategoryOptions.allowBluetooth]
        try? audioSession.setConfiguration(configuration)
        audioSession.unlockForConfiguration()
    }

它对 CallKit 有帮助。扬声器按钮按预期工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

系统提供的呼叫屏幕上扬声器按钮行为异常 的相关文章

随机推荐

  • Excel VBA 在不同语言中的行为不同

    Win XP Excel 2003 我有一个由名称定义的范围 该范围由查询填充 相同的命名范围形成单元格验证的源 单元格内下拉列表 在我的 VBA 中 该范围是通过名为 LOVL2 的范围对象访问的 每次查询重新填充范围时 其名称都会重新定
  • WiX -- 将文件安装到系统驱动器

    我正在开发一个安装程序 它将一些文件放入另一个应用程序中 该应用程序将其文件保存在 SystemDrive appName 中 该安装程序仅用于内部自动化 因此如果不考虑其他安装位置也可以 我发现默认情况下 WiX 将目标目录设置为可用空间
  • 使用 JavaScript 书签获取 Ajax HTML 元素

    我是书签新手 不知道用它可以做多少事情 我想从网页中获取一些元素 但直到我单击一些按钮后内容才会显示 我能够使用下面非常简单的代码在静态网页上获取某些内容 但是是否可以通过创建书签来获取更深层次的元素 是否可以使用javascript书签获
  • CryptoJS AES 加密与 JAVA AES 解密值不匹配

    我在客户端使用 CryptoJS AES 算法加密文本 并在服务器端用 java 对其进行解密 但出现异常 JS代码 var encrypted CryptoJS AES encrypt Message Secret Passphrase
  • 为什么我的 Oracle DataSource 仅在单元测试时出现重放错误?

    我的 Spring Boot 1 5 17 Spring 4 3 20 服务器在 bootRun 或部署时工作正常 但是 我的 Oracle 数据源失败了仅当单元测试时 java lang AssertionError 服务器正在发送非空重
  • AFNetworking 和 Swift

    我正在尝试使用 Swift 获取 JSON 响应 我嗅探了请求和响应 gt 一切正常 然而返回值始终是nil let httpClient AppDelegate appDelegate httpRequestOperationManage
  • 在 html 中以 100% 宽度和高度嵌入 pdf 文件?

    我试图在 html 代码中嵌入 pdf 文档 我尝试了三种不同的方法 这实际上给了我相同的结果 p It appears you don t have a PDF plugin for this browser No problem you
  • 从 Objective-C 运行 sudo 命令

    如何从 Objective C 运行 sudo 命令 我可以使用以下方法运行不需要 sudo 的简单命令 NSTask task task NSTask alloc init task setLaunchPath bin sh NSArra
  • 使用 PHP 将二进制转换为十六进制

    如何转换二进制数 即1111111 到十六进制 即7f 使用 PHP 我认识到我可以做到dechex bindec 1111111 但是 我确信这不是正确的方法 I tried bin2hex 1111111 但结果是 3131313131
  • '_positions.isNotEmpty':ScrollController 未附加到任何滚动视图

    我在滚动视图控制器中收到错误 这是错误 flutter package flutter src widgets scroll controller dart Failed assertion line 149 pos 12 position
  • sql根据条件从另一个表插入行

    考虑下面两个表 Table 1 ID DATA 1 A 2 B 3 C 4 D 5 E 6 F Table 2 ID DATA 2 G 3 F 4 Q 如果表 2 没有表 1 的 ID 如何将数据从表 2 插入表 1 换句话说 我想要以下结
  • 如何分发 32 位和 64 位版本的库

    我有一个由各种客户端 32 位和 64 位 调用的 C 库 到目前为止 它被编译为 AnyCPU 所以没有任何问题 最近 我添加了对 SQLite NET 库的依赖项 该库有 32 位和 64 位版本 但不是 AnyCPU 所以 现在 我必
  • 多个元素的 CSS 选择器索引

    我有以下代码 如你所见 我所有的div元素具有相同的class name 我想选第三divCSS 选择器的元素 我找不到任何办法 nth child n 用于子元素 子元素 任何想法 div class linkDisplayStyle a
  • 将字符串中每个单词的第一个字符更改为大写

    我找到了下面的函数 CFString大写 将字符串的每个单词中的第一个字符更改为大写 如果它是小写字母字符 void CFStringCapitalize CFMutableStringRef theString CFLocaleRef l
  • MSXML API 的文档在哪里? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 特别是对于 vbscript ASP set xmlDoc CreateObject Msxml2 DOMDocument 3 0 在微软
  • CoordinatorLayout 滚动后在底部留下空白空间

    我正在尝试使用 CoordinatorLayout 实现 Google 的最新设计技巧 但在滚动和视差效果方面存在问题 显示 活动 后 一切看起来都正常 但当我尝试滚动时出现问题 底部视图似乎未正确展开 向上滚动后 下方出现空白区域 底部视
  • 自动嵌入 YouTube 直播

    如何使用 php 在网页中自动嵌入 YouTube 直播 比如查询视频https youtube com user USERID live https youtube com user USERID live当传输正在播出时 我是OP的作者
  • 如果 x 是列表,为什么 x += "ha" 有效,而 x = x + "ha" 会抛出异常?

    据我所知 列表的 op 仅要求第二个操作数是可迭代的 ha 显然是可迭代的 In code gt gt gt x gt gt gt x ha gt gt gt x h a gt gt gt x x ha Traceback most rec
  • Reactjs:如何在生产应用程序的开发工具中隐藏节点模块和webconfig?

    我创建了一个正在运行的 React js 应用程序npx create react app my app我不希望在生产模式下在开发工具中提供完整的项目 如何在源选项卡 devtools 中禁用或隐藏节点模块和 webconfig 我检查了其
  • 系统提供的呼叫屏幕上扬声器按钮行为异常

    我们使用 CallKit 和 PortSIP 编写 VoIP 应用程序 这里的问题仅在 iOS 11 2 x 上重现 当用户点击 CallKit 提供的屏幕系统上的扬声器按钮时 会启用扬声器 但图标仍处于禁用状态 如果用户再次点击 系统也会