Android 的企业功能可为组织提供安全、灵活且 统一的 Android 移动平台 - 将设备、应用、 和管理。Android 应用与 Android 的企业功能兼容 默认情况。不过,您还可以使用一些其他功能 您的应用在受管理的 Android 设备上效果最佳:
- 工作资料兼容性 - 修改 Android 设备 应用,使其在受管设备上效果最佳。
- 托管配置 - 修改 让 IT 管理员可以选择指定自定义 应用的设置
- 专用设备 - 优化您的 应用,以便它可以作为自助服务终端部署在 Android 设备上。
- 单点登录 (SSO) - 简化登录流程 适用于在受管理的 Android 设备上登录不同应用的用户。
前提条件
- 您已创建 Android 应用。
- 您现在可以修改您的应用,使其为组织提供最佳体验。
- 最低版本:Android 5.0 Lollipop 推荐版本: Android 6.0 Marshmallow 及更高版本。
注意:大多数产品都内置了 Android 的企业功能 Android 5.0 设备;不过,Android 6.0 及更高版本提供 尤其是与专用设备相关的额外功能。
工作资料
您可以通过 工作资料。工作资料是一种受管理的工作资料 与 Android 设备上的主要用户账号相关联。答 工作资料可将工作应用和工作数据与个人应用安全地隔离开来 和数据此工作资料与 个人资料。这些单独的配置文件 让组织能够管理他们所关心的业务数据, 将用户设备上的所有其他内容交由用户控制。 如需深入了解最佳做法,请参阅 工作资料 指南。如需简要了解这些最佳实践,请参阅下文。
工作资料的主要功能
- 独立的安全资料
- 面向应用分发的 Google Play 企业版
- 单独的带标记工作应用
- 由管理员控制的仅商家资料管理功能
Android 5.0 及更高版本上的工作资料福利
- 完整设备加密
- 当出现以下情况时,为这两个配置文件分别创建一个 Android 应用软件包 (APK) 设备上已有个人资料和工作资料
- 设备政策控制器 (DPC) 仅限于工作资料
- 通过 DevicePolicyManager 类
工作资料注意事项
- Android 系统会阻止 intent 而 IT 管理员可以 启用或停用系统应用。
- 生效的文件路径(统一资源标识符 [URI]) 一份个人资料在另一个上可能无效。
防止 intent 在个人资料之间失败
很难知道哪些意图可以在个人资料之间交叉,并且
哪些应用已被屏蔽唯一确切的方法是进行测试。
在应用启动 activity 之前,您应验证
调用
Intent.resolveActivity()
。
- 如果它返回
null
,则表示请求无法解析。 - 如果它返回一些内容,则表示该 intent 已解析, 您可以放心地发送该 intent。
注意:有关详细的测试说明,请参阅 防止失败的 intent。
跨资料共享文件
某些开发者使用 URI 来标记 Android 中的文件路径。不过, 因为使用工作资料时存在单独的文件系统 建议:
使用: 内容 URI |
|
请勿使用: 文件 URI |
|
后续步骤:您的应用支持受管理的 请在工作资料中进行测试。请参阅测试应用。
实现受管配置
受管配置是 IT 管理员 可用来以特定方式管理用户的移动设备。 这些说明是通用的,适用于所有 EMM, 管理员可在其用户的 手机。
如果您是为企业或政府开发应用,则可能需要 以满足您所在行业的一系列具体要求。使用 管理配置,IT 管理员可以远程指定 为用户的 Android 应用设置并强制执行政策;用于 示例:
- 配置应用是通过移动网络/3G 还是仅通过 Wi-Fi 同步数据
- 在网络浏览器中允许或屏蔽网址
- 配置应用的电子邮件设置
- 启用或停用打印功能
- 管理书签
实现托管配置的最佳做法
设置受管配置 它是有关如何构建和部署 受管配置。阅读完本文档后,请参阅 以获取更多指导。
首次启动应用时
启动应用后,您就可以查看
已在onStart()
中为此应用设置了配置,或者
onResume()
。此外,您还可以查看
应用处于受管理或非受管状态例如,如果
getApplicationRestrictions()
会返回:
- 一组特定于应用的限制:您 可以静默配置托管配置(无需 用户输入)。
- 空软件包 - 应用的行为方式与 它是不受管理(例如,应用在个人 个人资料)。
- 具有单个键值对的软件包
KEY_RESTRICTIONS_PENDING
设为 true - 您的 应用处于受管理状态,但未配置 DPC 正确。您应从您的应用中屏蔽此用户,并直接 IT 管理员。
监听对托管配置的更改
IT 管理员可以更改受管配置以及 政策。由于 我们建议您确保应用可以接受新的 限制,如下所示:
- 启动时提取限制 - 您的应用应
在
onStart()
致电getApplicationRestrictions()
和onResume()
,并与旧版限制进行比较 看看是否需要进行更改 - 跑步时聆听 - 动态注册
ACTION_APPLICATION_RESTRICTIONS_CHANGED
(在您的 确认是否存在新的活动或服务后 限制。此 intent 只会发送给 动态注册,而非应用中声明的监听器 清单。 - 在未运行时取消注册 - 在
onPause()
中, 您应该取消注册ACTION_APPLICATION_RESTRICTIONS_CHANGED
。
专用设备
专用设备是指使用的自助服务终端设备 用于单一用途,例如数字标牌展示、票券 印刷机或结账机。
当 Android 设备配置为专用设备时,用户会看到 锁定屏幕上没有主屏幕或“最近用过的应用”的应用 用于退出应用的按钮。专用设备也可以配置为显示一组 如带有图书馆应用的图书馆信息亭 和网络浏览器。
有关说明,请参阅 专用设备。
使用 Chrome 自定义标签页设置单点登录
企业用户的设备上通常会有多个应用 的用户更愿意登录一次以访问其所有工作应用。 通常情况下,用户通过 WebView; 但是,有几个原因会导致这一结果不理想:
- 用户经常需要以相同的身份反复登录 凭据。WebView 解决方案通常不是真正的单一解决方案 登录 (SSO) 体验。
- 可能存在安全风险,包括恶意应用 检查 Cookie 或注入 JavaScript® 来访问用户的 凭据。即使受信任的开发者依赖 潜在恶意的第三方 SDK
这两个问题都可以通过浏览器对用户进行身份验证 自定义标签页,而不是 WebView。这样可以确保身份验证:
- 发生在托管应用的安全环境(系统浏览器)中 无法检查内容。
- 具有共享的 Cookie 状态,以确保用户只需登录即可 一次。
要求
对自定义标签页的支持可向后兼容至 API 级别 15 (Android 4.0.3)。 若要使用自定义标签页,您需要有受支持的浏览器(例如 Chrome)。 Chrome 45 及更高版本以如下形式实现此功能: Chrome 自定义标签页。
如何对自定义标签页实施单点登录?
Google 已将一个 OAuth 客户端库开源,该库使用自定义 标签页,将其提供给 OpenID Foundation。要为单点登录设置自定义标签页,请执行以下操作: AppAuth 库,请参阅 文档和示例代码 GitHub 上。
测试应用
开发应用后,您需要在工作资料和完整模式下测试您的应用 受管理的设备。请参见以下说明。
使用 Test DPC 测试您的 Android 应用
我们提供 Test DPC 应用,以帮助 Android 开发者在企业中测试其应用 环境使用 Test DPC,您可以在设备上设置 EMM 政策或托管配置值 - 就像单位使用 EMM 来管理设备一样。如需在设备上安装 Test DPC,请按以下步骤操作: 请选择以下方法之一:
- 从以下位置安装 Test DPC Google Play。
- 在 GitHub
如需详细了解如何配置 Test DPC,请参阅以下说明和 测试 DPC 用户 导视面板。
配置工作资料
要在工作资料中测试您的应用,您需要先使用 测试 DPC 应用,如下所示:
- 在设备上安装 Test DPC。
- 在 Android 启动器中,点按设置 Test DPC 应用图标。
- 按照屏幕上的说明操作。
- 在设备上安装您的应用并进行测试,看看它在工作资料中的运行情况。
Android 会创建工作资料,并在工作资料中安装 Test DPC 副本。您使用此 带有工作标志的 Test DPC 实例,用于在工作资料中设置政策和受管配置。接收者 如需详细了解如何针对开发设置工作资料,请参阅开发者指南 工作资料。
配置全代管式设备
组织使用全托管式设备,因为他们可以强制执行全方位的管理 政策如需配置全托管式设备,请按以下步骤操作:
- 在设备上安装 Test DPC。
- 确认该设备上没有其他用户或工作资料。
- 确认该设备上没有任何账号。
- 在以下位置运行以下 Android 调试桥 (adb) 命令:
您的终端:
adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
- 完成设备所有者的配置后,您就可以在该设备上测试您的应用了。您 应该专门测试 受管配置和 intent 就在该设备上运行。
您还可以使用其他配置方法,请参阅 Test DPC 用户指南。想要了解 管理员通常会注册和配置 Android 设备,请参阅 配置 设备。
端到端测试
在上述环境中完成应用测试后, 那么您可能需要在端到端生产环境中测试您的应用 环境此流程包括客户需要执行的步骤 在其组织中部署应用所需采取的步骤,包括:
- 通过 Play 分发应用
- 服务器端受管配置
- 服务器端配置文件政策控制
您需要访问 EMM 控制台才能完成端到端 测试。最简单的方法是申请一个测试控制台 。获得访问权限后,请完成以下任务:
- 使用 new ApplicationId 提供。
- 声明受管理的 Google 网域的所有权,并将其绑定到您的 EMM。如果您 已有绑定到 EMM 的测试网域,则可能需要 解除绑定,然后使用您偏好的 EMM 进行测试。请咨询您的 特定解除绑定步骤的 EMM。
- 将您的应用发布到专用渠道,以供其专用 受管理的 Google 网域。
- 您可以使用 EMM 控制台和 EMM 应用执行以下操作:
<ph type="x-smartling-placeholder">
- </ph>
- 设置工作设备。
- 分发您的应用。
- 设置受管配置。
- 设置设备政策。
具体流程因 EMM 而异。请咨询您的 如需了解更多详情,请参阅 EMM 文档。恭喜!您已完成 这些步骤,并验证您的应用是否适用于企业用户。