指南

如何在 Android 设备上批量预装应用

实用指南,说明应用如何在首次使用前进入整个设备群——从工厂预装到托管部署——帮助您选择适合软件和批次规模的路径。

发布于
更新于
Preloading apps on Android devices at scale in a staging workflow
指南
围绕真实部署环境构建

首次使用前交付应用的四种方式

将软件安装到设备有几条不同路径,彼此不能互换。工厂预装是在设备出货前把应用写入配置版本;系统应用位于受保护分区中,拥有更高权限;托管 Google Play 通过注册下发应用;APK 预置则提前备好应用包,并在设备预配期间安装。哪种方式合适,取决于设备是否运行 GMS、所需控制以及设备群的注册方式。

  • 工厂预装——在制作配置版本时把应用集成到固件镜像中
  • 系统应用——安装到受保护分区并拥有更高权限
  • 托管 Google Play——通过注册和 EMM 交付应用
  • APK 预配——预先准备应用包,并在首次开机预配期间安装

工厂预装与托管部署对比

比较不同路径最清晰的方法,是看应用位于何处以及谁能够更改它。工厂预装把应用放入固件镜像,使其首次开机时就已存在,但之后的更新路径要经过固件,而不是应用商店。托管部署则在注册后通过 DPC 和 EMM 安装应用,使更新路径独立于配置版本,并把是否移除应用变成策略决策。每条路径都取决于 OEM 和平台,并须针对所选设备进行技术验证。

  • 工厂预装:首次开机时已存在,更新路径与固件镜像绑定
  • 托管部署:注册后由 DPC 安装,采用应用商店式更新
  • 托管部署中的移除由策略决定,预装中的移除由配置版本决定
  • 正确组合取决于设备、EMM 和所需更新频率

APK 签名、权限与依赖

规划任何预装前,必须先了解应用包本身。应用包名称和签名密钥必须保持稳定,因为它们会把更新绑定到同一个应用,并决定应用能否取得特权或系统级位置。运行时权限、对 Play 服务的依赖、原生库和目标 CPU 架构,都会影响应用可以安装在何处以及如何安装。我们把这些内容视为需要前期确认的技术前提,而不是既定假设,因为每一项都须在真实硬件上验证。

  • 应用包名称和签名密钥在各版本间保持稳定并相互关联
  • 按照最小权限原则审核运行时权限
  • 根据 GMS 或 AOSP 目标检查 Play 服务依赖
  • 原生库与设备 CPU 架构匹配

私有应用分发与更新

预装应用很少会一成不变,因此维护路径与首次安装同样重要。私有应用无需公开上架即可分发;版本代码驱动更新逻辑,分阶段发布限制影响范围,当应用版本运行异常时还应备好回滚路径。量产前须商定更新渠道和应用责任归属,明确由谁发布新版本以及如何送达设备群。这些机制可通过 MDM/EMM 配置,并在验证期间针对具体部署确认。

  • 无需在公共应用商店上架即可分发私有应用
  • 版本代码决定更新检测和顺序
  • 为新应用版本安排分阶段发布和经过测试的回滚路径
  • 批量生产前商定更新渠道和应用责任归属

批量生产前测试

任何预装路径都不应在未经测试的情况下进入量产。在所选操作系统版本和固件上进行兼容性测试,检查应用能否按预期安装、启动和运行;同时还要在真实设备上测试网络条件、登录流程和所有相关外设。测试输出是一份验收记录,说明已经验证的内容和所有已知限制。按规范完成测试,可以在假设被复制到整个批次前发现问题。

  • 针对目标操作系统版本和固件配置版本进行兼容性测试
  • 在真实设备上测试网络、登录和外设行为
  • 提前记录已知限制,而不是等到现场才发现
  • 批次投产前取得已签署的验收记录

安全与数据处理

为设备群处理应用,意味着必须谨慎处理代码和凭据。APK 传输须受控,应用包进入配置版本制作或预配流程前须进行恶意软件扫描;所有测试账户都应使用最小权限凭据,而不是生产环境机密。数据保护应成为日常工作实践,而不是事后补救,因此必须有意识地界定应用可以访问设备上的哪些内容。这些措施是我们执行并验证的实践,而不是绝对保证。

  • APK 传输受控,并在使用前进行恶意软件扫描
  • 测试账户使用最小权限凭据,绝不使用生产环境机密
  • 有意识地界定应用在设备上的数据访问范围
  • 把数据处理实践作为配置版本的一部分进行验证,而不是仅凭假设

常见问题

用户可以卸载预装应用吗?

这取决于应用的交付方式。工厂预装的系统应用可以设置为难以移除;在受支持硬件上,托管部署可以通过设备所有者策略阻止卸载。两种方式都取决于 OEM 和平台,并须在验证期间确认。

预装应用可以在首次开机后自动启动吗?

自动启动行为可以通过 MDM/EMM 配置;对于系统应用,还可以在配置版本中设置。但 Android 后台和电池限制会因操作系统版本与 OEM 而异,具体行为须在目标设备上完成技术验证。

恢复出厂设置后,应用会怎样?

集成到固件镜像中的应用属于配置版本的一部分,通常会在恢复出厂设置后重新出现;托管部署的应用则会在设备重新预配时通过注册重新安装。具体适用哪条路径取决于 OEM 和平台。

应用可以离线更新吗?

可以安排支持离线的更新路径,例如在预配期间应用预先准备的 APK,或使用本地更新渠道;但由应用商店驱动的托管更新通常需要网络连接。可行方式会在验证期间针对您的部署确认。

告诉我们您的工作流程和管控规则。

我们将需求转化为可直接部署的设备。