Kiosk App 自动更新问题及解决方案

7次阅读
没有评论

问题描述

询问如何在不依赖用户交互的情况下自动更新安卓设备(三星Galaxy S2)上的应用程序。提问者考虑了通过杀死运行中的应用再重新打开的方式,但不确定这种方法能否保证自动更新。

用户还表示有700多台设备需要进行管理和自动化处理。由于在过去一整夜等待,发现即使在应用运行时也没有完成更新。因此寻求更多关于如何实现非交互式自动更新的建议。

解决方案

方案1:通过Play Store配置实现自动更新

背景信息:

  • 应用位于Google Play Store;
  • 需要确保设备设置中启用“自动更新应用程序”选项。

操作步骤:

  1. 检查Play Store设置

    • 用户需要在设备上开启自动更新功能,在设置中确认:
      1. 进入 设置 -> 应用 -> Google Play -> 自动应用更新 (或者相近的路径,根据具体硬件和OS版本);
      2. 确认开关打开,并且选择适当的网络类型(推荐使用Wi-Fi进行全速下载)。
  2. 测试更新

    • 如果更改了上述设置并且确认自动更新功能开启后,再次进行完整的安装或更新操作验证是否能够实现非交互式更新。

建议:

  • 对所有设备进行配置更新;
  • 每天手动检查一次设备,并通过统一的运维工具或脚本定期推送更新指令来确保系统健康状态且所有设备都能顺利接收更新。

方案2:针对Android原生机制不支持非交互式自动升级

如果应用不在Play Store内分发,将需要更复杂的手段如:

  1. 设备需被根权限控制
  2. 在深度安全级别下运行的应用可能能够实现完全的非用户干预安装。但由于此过程通常涉及到对操作系统的广泛修改甚至直接变更,因此这仅适用于特定使用情况下的少数设备。

  3. 通过MDM(移动设备管理)解决方案获取系统签名应用更新

  4. 少数情况下,设备预装了由OS厂商署名的MDM工具。该工具可以在不触及用户隐私或体验的情况下强制执行应用下载与安装过程。

  5. 自定义应用程序签名

  6. 需要技术上高度复杂的操作,且涉及到安全性和法律合规性考量的问题。

附加建议

  • 对于涉及大量设备的环境,请定期检查所有已知方案并选择最适合自身场景的方法;
  • 推荐使用自动化测试框架或运维系统来追踪更新状态及确认应用版本同步完成情况。这有助于减少手动操作的时间成本,提升整体效率。
  • 考虑雇佣专业人员协助解决可能存在的技术难题以达到期望的更新目标。

综上所述,在Android生态中实现真正意义上的全自动化非交互式的更新较为复杂。但在大多数情况下,遵循play store中的相关设置即可很大程度方便非交互式下载。对于特定情况下的需求,则需要考虑上述更加复杂的解决方案。

正文完