实现企业电话

本页概述了 Android 框架中支持企业用例的电话相关部分。本文档面向制造商,完全侧重于框架相关的电话变更。此外,本页还概述了 OEM 需要对其预加载的、处理电话相关功能的应用进行的更改。

Android 7.0 引入了几项新功能来支持企业电话用例,特别是:

  • 跨个人资料联系人搜索 - 允许个人资料中的应用搜索由受管理个人资料联系人提供程序提供的联系人,这些联系人可以由任何数据存储区提供支持,例如设备本地存储区,或者企业目录中的存储区。
  • 跨个人资料联系人标记 - 允许将工作联系人与个人联系人清晰区分开来。
  • 使 Connection Service 能够识别受管理个人资料 - 允许受管理个人资料中的应用提供电话功能,例如提供单独的工作拨号器和工作 ConnectionService

Android 5.0 支持以下企业电话功能:

示例和源代码

Android 开源项目 (AOSP) 的拨号器、联系人和消息应用实现已集成跨个人资料联系人搜索和标记功能。

示例

  • 为工作联系人添加标记: 请参阅 packages/apps/ContactsCommon f3eb5a207bfe0ff3b4ed2350ae5865ed8bc59798
  • 跨个人资料搜索: 请参阅 packages/apps/ContactsCommon cd0b29ddbf3648e48f048196c62245d545bc6122

实现

设备实现者必须在其拨号器、联系人和短信或彩信消息应用中为联系人实现跨个人资料、搜索、查找和标记功能。

应使用 Enterprise Contacts API(ContactsContract.Contacts.ENTERPRISE_CONTENT_FILTER_URI 等)来实现跨个人资料联系人搜索,您可以在 Android Developers 网站上的 工作资料联系人 指南中找到该 API。

工作资料联系人标记

可以通过检查 ContactsContract.Directory.isEnterpriseDirectoryId()(如果可用)或 isEnterpriseContactId() 来实现工作资料联系人标记。要了解详情,请参阅工作资料联系人

能够识别受管理个人资料的 ConnectionService

制造商无需修改框架代码即可支持此功能,但应注意此功能对 Telecomm 服务和其他电话功能的影响。

验证

可以通过以下方式验证跨个人资料联系人搜索和标记功能:

  1. 使用 TestDPC 在测试设备上设置受管理个人资料。
  2. 启用跨个人资料联系人搜索。
  3. 在受管理个人资料中添加本地工作联系人。
  4. 在个人资料内的系统拨号器、联系人和短信/彩信消息应用中搜索该联系人,检查是否找到该联系人并且已正确标记。

已添加 CTS 测试,以确保基础跨个人资料联系人搜索 API 已在 com/android/cts/managedprofile/ContactsTest.java 中实现。