实现企业电话服务

本文档介绍了 Android 框架中支持企业用例的电话相关部分。本文档的适用对象为制造商,专门介绍与框架相关的电话方面的更改。此外,本文档还简要介绍了 OEM 需要对负责处理电话相关功能的预加载应用做出哪些更改。

Android 7.0 引入了几项新功能来支持企业电话用例,具体包括:

  • 跨资料联系人搜索功能 - 允许个人资料中的应用搜索由受管理资料联系人提供程序提供的联系人,联系人信息可存储在任何数据存储服务中,例如存储在设备本机或企业目录内。
  • 跨资料联系人标记 - 将工作联系人与个人联系人明确区分开来。
  • 使连接服务可感知受管理资料 - 受管理资料中的应用可藉此提供各种电话功能,例如提供单独的工作拨号器和工作连接服务

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

示例和源代码

Android 开源项目 (AOSP) 在拨号器、通讯录和短信应用的实现中集成了跨资料联系人搜索和标记功能。

例如:

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

实现

设备实现人员必须在拨号器、通讯录和短信/彩信应用中实现联系人的跨资料使用、搜索、查询和标记功能。

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

工作资料联系人标记

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

可感知受管理资料的 ConnectionService

制造商应该不需要修改框架代码即可支持此功能,但应该了解它对电信服务及其他电话功能的影响。

验证

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

  1. 使用 TestDPC 在测试设备上设置受管理资料。
  2. 启用跨资料联系人搜索。
  3. 在受管理资料中添加本机工作联系人。
  4. 在个人资料中的系统拨号器、通讯录和短信/彩信应用内搜索该联系人,确认该联系人可以找到并已正确标记。

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