实现实时信息

本页介绍如何在 Android 9 中实现实时信息 (RTT)。RTT 这项功能面向失聪用户或听障用户提供,可替代电传打字机 (TTY) 技术。借助此功能,设备可以使用同一电话号码进行语音通话和 RTT 通话,即时传输信息(信息是逐个字符输入的),支持拨打 911,并且向后兼容 TTY。

在 RTT 通话中,来电者和接听者均能知晓自己正在进行 RTT 通话。建立连接后,双方都会进入 RTT 通话,此时信息输入和键盘将启用。信息在输入时将会显示,同时逐个字符发送。

示例和源代码

AOSP 的 Call.RttCallConnection.RttTextStream 中提供了框架组件。IMS/调制解调器组件是专有的,应由 IMS/调制解调器供应商提供。您还可以使用拨号器 RTT 的参考实现。

RTT 的 AOSP 拨号器代码:

实现

要实现 RTT,您应该与调制解调器/SoC 提供商合作,因为您需要用到支持 RTT 的调制解调器。您可以升级到 Android 9,也可以将一系列电话框架补丁程序向后移植到 Android 8.0 中。在 Android 8.0 AOSP 中添加 API 将不起作用。

此功能使用 AOSP 的 android.telecom 中的公共 API,以及 android.telephony.ims 中带 @SystemApis 标记的公共 API。所有界面都位于 com.android.phone 和 AOSP 拨号器中。

如需实现 RTT,请导入 AOSP 代码,并提供为 RTT 实现 IMS 端 @SystemApis 的 IMS 堆栈。这需要:

  • 使用 ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED) 开启/关闭 RTT
  • 通过 ImsStreamMediaProfile#mRttMode 指示通话的 RTT 状态
  • 支持在 ImsCallSession 中使用以下方法:

    • sendRttMessage
    • sendRttModifyRequest
    • sendRttModifyResponse
  • 支持在 ImsCallSessionListener 中调用以下方法:

    • callSessionRttModifyRequestReceived
    • callSessionRttModifyResponseReceived
    • callSessionRttMessageReceived

自定义

您可以启用或停用此功能,方法是使用 packages/services/Telephony 的设备配置覆盖中的设备配置 config_support_rtt,以及运营商配置文件中的运营商配置标记 CarrierConfigManager.RTT_SUPPORTED_BOOL。根据配置,该功能可通过“无障碍功能”设置提供,也可以不通过该设置提供。您可以使用设备配置来更改默认设置。默认情况下,该功能设置为关闭。

验证

要验证 RTT 实现,请运行 CTS 测试,并执行拨号器 RTT 测试。

CTS 测试

CTS 测试 (android.cts.telecom.RttOperationsTest) 涵盖了实现的 AOSP 部分。对于实现的 IMS 堆栈部分,您必须提供自己的测试。

拨号器 RTT 测试

场景说明 界面模拟
如果设备停用 RTT,则会显示一条有关 RTT 的对话框。

RTT 横幅

在拨号器设置中,在“设置”>“无障碍功能”下有一个“实时信息”屏幕,其中提供了选择其他 RTT 模式的选项。

RTT 无障碍功能

默认情况下 RTT 处于启用状态时:
  • 在拨打电话时,系统显示标准的通话中拨号界面。
  • 建立通话连接后,系统显示 RTT 模式视图。如果接听用户未默认进入 RTT 模式,则在用户等待响应时,系统将显示一条表明已请求 RTT 模式的横幅。

RTT 通话中界面

如果设备停用了 RTT:
  • 来电屏幕显示标准接听器和标准通话标签页。

RTT 标准通话界面

如果设备上启用了 RTT 并且 RTT 默认设置为以 RTT 形式接听所有通话:
  • 来电屏幕显示 RTT 接听器和相关联的通话标签页。
  • 如果用户接听电话,则系统会加载 RTT 模式视图,同时启用键盘。

RTT 模式视图

RTT 的通话中界面提供了多个选项,以允许用户控制语音通话的状态以及获得 RTT 用法方面的一般性帮助:
  • 开启和关闭麦克风。
  • 开启和关闭扬声器。
  • 使用拨号键盘输入。
  • 添加其他通话。
  • 从 RTT 通话切换到语音通话。
  • 开启和关闭保持通话功能。

RTT 通话中界面相关选项

在“通话详情”屏幕中,选择“查看转录内容”链接可显示包含 RTT 会话全文的完整对话视图。系统将显示时间戳。用户可以使用“返回”按钮返回“通话详情”屏幕。

RTT 通话详情