分清真实文件与合成示例
从自己的应用包中取出 embedded.mobileprovision,再与手头的描述文件比较。示例没有签名人,只用来演示视图与字段类型,不是 Apple 签发的可安装文件。
iOS / Android / 移动开发
选择本地描述文件,或载入合成示例。手动解析后查看概览、权限和字段树,再导出所需的 XML 副本。
拖入一个 .mobileprovision 或 .provisionprofile 文件,最大 5 MiB。
尚未选择文件
文件只在当前标签页读取,工具不会上传或保存输入。
替换已知设备字符串并清空二进制数据;团队、应用等元数据仍可见。修改选项后需要重新解析。
选择文件后点击解析。
解析不验证签名、证书、吊销状态或安装资格。
导出结果是不带签名的 XML 副本,不能作为描述文件安装。
构建使用了错误的团队、测试设备无法安装,或者几个描述文件同名却有不同的到期日期时,mobileprovision 查看可以帮助你先查清手上的文件。建议从实际打包的应用里取出描述文件,再与开发者账号下载的版本核对。
描述文件解析按 CMS 结构定位内嵌的 XML,而不是在任意字节中搜一段看似正确的文本。现代系统可能以 DER-Encoded-Profile 为准,这里提供的是便于阅读的外层诊断视图,不能替代系统的签名判断。
mobileprovision 查看把团队、应用标识与描述文件有效期集中到概览中,同时保留全部字段路径。遇到权限问题可切换到 Entitlements,分清布尔值、数组与字典,而不是只看一个含糊的状态标签。
默认隐藏设备 UDID,并替换它们在其他字符串中重复出现的内容。导出时一并清空 data 数据,避免内嵌的二进制副本重新带出设备标识。团队和应用元数据仍保留,脱敏并不等于匿名化。
从自己的应用包中取出 embedded.mobileprovision,再与手头的描述文件比较。示例没有签名人,只用来演示视图与字段类型,不是 Apple 签发的可安装文件。
切换脱敏会清除旧结果并禁用导出,需再次点击解析,或按 Ctrl/Cmd + Enter。只切换概览、权限、字段树和 XML 视图时,不会改变解析内容。
点击字典或数组的路径可折叠其后代,每次增加 50 行,避免设备列表一次占满页面。导出始终保留完整的当前副本;清空或替换文件前会预览,并可撤销一次。
同时显示 Name、UUID、TeamName 和 TeamIdentifier。Bundle ID 从 application-identifier 去掉第一个前缀片段推导,兼容 macOS 的备用键名;通配符原样保留,缺字段时不会猜一个默认值。
Entitlements 有独立视图,数组、字典、布尔值、整数、日期和二进制字段仍保留各自类型。描述文件中的权限表示允许范围,不等于应用最终签名中实际声明的权限,也不会自动检查两者是否匹配。
创建和到期日期保留 UTC 原值,并记录本次解析时浏览器的当前时间。结果只区分到期、未到期和缺失,电脑时钟错误会影响比较;日期尚未到期绝不表示签名可信。
通过 SignedData 容器找到内嵌数据,生成保留字段顺序与值类型的 plist。默认输出替换设备字符串,并将所有 data 内容清空;关闭脱敏重新解析后,可导出完整字段值。
选择本地文件后点击解析。工具先检查 CMS 结构,再读取里面的 XML plist。文本编辑器有时能显示文件中的一部分内容,但读到 XML 片段并不能证明整个文件符合描述文件容器结构。
在字段树中展开 ProvisionedDevices。默认显示占位值并保留设备数量;如需核对真实设备标识,请关闭脱敏并重新解析。字段不存在时,不会直接解释为所有设备均可安装。
在概览中核对 ExpirationDate 与本次比较时间即可判断记录的期限是否已过。到期日期并不能说明证书、签名或描述文件当前是否被 Apple 接受,完整签名判断仍需使用平台工具。
可自行解压开发或 Ad Hoc 的 IPA,在 Payload 下的应用包里找到 embedded.mobileprovision。本页不负责解包;从 App Store 分发的应用可能不包含该文件,不能仅凭文件缺失认定构建有问题。
编辑导出副本中的日期无法延长 Apple 签发的描述文件。XML 副本没有 CMS 签名,只供查看。需要更新时应通过开发者账号或 Xcode 重新生成合适的文件,再使用新描述文件构建应用。
还有描述文件查看细节需要补充?