关联的工作应用和个人应用

关联的应用是一种由 Android 框架支持的机制,可让您的应用访问工作资料和个人资料中的内容,以便在单个界面中向用户显示。

抢先体验计划

借助适用于关联的工作应用和个人应用的抢先体验计划,开发者可以在 Google Play 中发布的应用中使用 INTERACT_ACROSS_PROFILES 权限,但需要先申请批准。

Android Enterprise 工程团队希望从应用开发者那里获得有关关联应用 SDK 的反馈。通过了解开发者的用例和要求,我们可以详细了解应用开发者打算如何使用此权限来改善 Android 用户的工作资料体验。同样重要的是,通过抢先体验计划,我们可以收集第三方反馈,了解潜在政策集成要求的可行性。这最终将有助于我们制定最合适的一组政策,以管理在 Google Play 中分发的应用中使用此权限的情况。

审批流程

为保护 Play 用户,请求使用 INTERACT_ACROSS_PROFILES 权限的应用必须先获得 Android 企业版团队的批准,然后才能在 Google Play 上发布。如需使用此权限,开发者必须先将其用例提交给 Google 进行审核。并非所有用例都会纳入审核范围。我们将根据相同的标准评估所有应用和用例,考虑应用可能给最终用户带来的好处,以及使用相应权限来实现该用例的必要性,包括以下因素:

  • 此功能是否能够给用户带来显而易见的价值?
  • 用户是否希望他们的工作应用和个人应用以这种方式互动?
  • 应用使用相应权限实现的功能对应用的主要用途而言是否重要?
  • 应用是否可以在不使用相应权限的情况下提供相同或类似的体验?

开发者需要满足以下条件才能申请加入 EAP:

  • 他们要提交审核的应用应是已证明其热门程度的现有应用(在 Google Play 中至少有 20 万次下载)。我们不打算接受全新应用的 EAP 提交内容。
  • 将考虑列入许可名单来使用 INTERACT_ACROSS_PROFILES 权限的应用应属于以下 Play 商店应用类别之一:
    • 个性化
    • 效率
    • 工具
    • 汽车与交通工具
    • 通信
  • 开发者必须同意遵守下一部分中列出的集成要求。

集成要求

若要加入抢先体验计划,应用还必须满足以下要求:

  • INTERACT_ACROSS_PROFILES 权限只能用于提供对用户有益且与工作专用应用的核心功能相关的功能(或包含工作功能)。这些功能即应用的主要用途,可能包含一组核心功能,这些功能必须均已在应用说明中醒目地载明并宣传。
  • 应用必须征得用户同意(包括显示 AOSP 实现提供的相应界面),然后才能被授予 INTERACT_ACROSS_PROFILES 权限。
  • 应用不得使用此权限在设备上或设备外将用户身份关联到工作应用和个人应用之间。
  • 应用不得使用此权限抓取个人应用可访问的任何数据来构建身份图谱。
  • 应用不得主动将个人应用的数据发送给 IT 管理员或其他由管理员管理的应用,也不得允许 IT 管理员间接访问个人资料中的数据。
  • 应用不得使用此权限来访问个人资料,以获取个人应用或账号列表。
  • 应用不得向其他应用发送跨资料数据。
  • 应用不得在一个资料中登录另一个资料中存储或生成的任何数据(例如应用数据、设备设置),包括个人身份信息 (PII)(例如电子邮件地址、用户名)。
  • 应用不得将设备中存储或生成的任何数据(例如应用数据、设备设置),包括个人身份信息(例如电子邮件地址、用户名)从设备与其他资料传输出去。

我们来看几个示例用例

允许用户在一个视图中查看个人日历和工作日历的日历应用可能是请求此权限的适用用例。

如果应用提供的备份服务会将工作数据同步到个人资料账号,或者将个人资料数据同步到工作资料,则不会获得批准,因为这类应用会将数据从一个资料发送和记录到另一个资料。

如果照片库应用想要使用此功能来访问工作资料联系信息以便分享照片,则不会获得批准。使用 Sharesheet 即可同样有效地实现此功能。

提出审核请求

  1. 查看抢先体验计划 (EAP) 标准和前面提到的集成要求,确保您的应用符合相关要求。
  2. 下载并填写关联的应用调查问卷,概述您的用例。

  3. 使用此表单查看并接受 EAP 条款,然后将关联应用调查问卷的完整副本发送至 connected-apps-ext@google.com,以供我们团队审核。

  4. 如果您的用例获得批准,请开发和测试您的功能 / 应用。

  5. 应用准备就绪后,请将 APK 提交给我们的团队进行审核。我们的团队会根据已批准的用例中所述的情况,审核应用对权限的使用情况。

  6. 如果我们的团队批准了您的应用,您就可以使用 Google Play 管理中心在 Google Play 上发布相同的 APK

每当您对已获批准的应用进行更改时,请检查该应用是否仍在使用已获批准的用例中列出的权限。如果您要更改功能 / 应用的运作方式,请按照前面提到的第 2 步和第 3 步,将您的使用情形重新提交给 Google 以供评估。

如果您未能在规定的时间范围内做出必要更改来解决违规问题,我们将撤消对您应用的批准。在问题得到解决并获得 Android 企业团队的重新批准之前,您将无法在 Google Play 上更新应用,除非您从应用中移除该功能及其对 INTERACT_ACROSS_PROFILES 权限的使用。

后续会发生什么?构建此功能的难度如何?

获得适当权限后,关联的应用 SDK 可简化跨资料行为或数据访问的执行和测试。通常,跨资料调用本身非常简单,因此您应该能够根据具体产品目标以及应用本身的其他请求更改来估算复杂性和工程成本。

原则

应用的一般数据流不应因连接而发生变化。概括来讲,不要想着“向其他资料发送消息告知他们 X”或“从其他资料获取数据并将其传递给 Y”。而应继续考虑“获取电子邮件”“删除事件”或“注册监听器”。每部设备只能有一个软件包名称对应的 APK,因此每个配置文件都将始终具有相同的应用版本。在每个数据流堆栈中的单个位置,关联的应用 SDK 可用于将调用路由到适当的配置文件。

权限

首先,确定您的应用属于哪一类别:征得用户完全同意预先授予跨用户。本文档中将会多次引用此 ID。如果您的特权应用已具有 INTERACT_ACROSS_USERS 权限,则您是跨用户。如果您被列在 cross_profile_apps.xml 文件中,即表示您已预先获得权限。否则,与绝大多数应用一样,您完全同意

商品注意事项

  • 当工作资料处于关闭状态时,您将无法访问工作数据。
  • 只有从 Oreo 开始的版本支持关联的应用 SDK,这涵盖了绝大多数工作资料。正如下一部分所述,对于大多数应用,此要求实际上将从 Android 11 开始生效。

以下几点仅适用于已征得用户同意的应用和预授权的应用:

  • 该权限始终可由用户撤消,因此假设您必须针对应用未连接的情况构建应用。
  • 只有从 Android 11 开始才支持关联的应用。
  • 使用此权限的应用需要包含在 Play 商店许可名单中。

以下几点仅适用于需要征得用户完全同意才能收集和使用用户数据的应用:

  • 默认状态为关闭。您需要引导用户完成意见征求流程,以请求相应权限。
  • IT 管理员也需要同意您的应用,否则用户将无法授予该权限。
  • 需要同时在这两个资料中安装应用。用户如果尚未在其他个人资料中安装,意见征求流程已提示他们进行安装。