非托管应用是否可通过InstallApplication命令或MDM方式更新
「非托管应用无法通过InstallApplication命令更新」的推测是否成立
这个推测符合苹果MDM协议的默认运行逻辑,但不是绝对的100%成立:
官方文档给出的仅为充分条件说明,没有直接否定非托管场景的可能性,但从实际的协议实现规则来看:
- 默认状态下,
InstallApplication仅支持静默更新已标记为托管的应用,对非托管应用触发该命令时要么直接返回执行失败,要么弹出用户确认窗口,要求用户同意将该应用转为托管后才能继续更新流程 - 官方文档没有使用「当且仅当」属于技术文档的常见表述习惯,目的是预留特殊场景下的例外空间
非托管应用是否完全无法通过MDM完成更新
答案是否定的,存在两类可行的实现方式:
- 若设备处于苹果监督模式,且MDM已经获得「强制托管已有应用」的权限,此时发送
InstallApplication命令可以静默将非托管应用转为托管并完成更新,全程不需要用户操作确认 - 绝大多数商用MDM产品都支持推送非托管应用的更新提示,会在设备端弹出更新引导,用户点击后可直接跳转到App Store完成更新,这种间接引导更新的方式也属于通过MDM实现非托管应用更新的范畴
内容的提问来源于stack exchange,提问作者ZAD-Man
相关产品推荐
相关产品推荐

