.mobileprovision文件 可以修改吗

文章背景

最近在接游戏发行方SDK时,游戏发行方提供的.mobileprovision文件不符合我司自动打包时配置的一些参数格式。我司让发行方重新生成.mobileprovision 文件,发行方拒绝了并告诉我司可以直接打开.mobileprovision 文件并修改其中的 name (含义为.mobileprovision文件名)值。

我的第一反应是该文件无法被修改,且修改后不能用。但为了在后续沟通中占据主导权,我研究了一下 .mobileprovision 文件的修改。

基础介绍

.mobileprovision 文件是由苹果生成的二进制文件,内部结构完全由苹果定义。

.mobileprovision 文件用于应用的签名和授权。它包含了应用程序标识符、开发者证书、设备列表等信息。

另外,直接修改二进制文件极大可能导致文件损坏或无效。

1、查看 .mobileprovision

.mobileprovision文件是二进制文件,使用文本编辑器(如TextEditSublime TextVisual Studio Code等)打开.mobileprovision文件,会看到一些乱码。

  1. 使用Xcode查看mobileprovision文件:
  • 这种方式只能看到 mobileprovision文件的部分内容,无法编辑。
    在这里插入图片描述
  1. 使用终端指令查看*mobileprovision文件:security cms -D -i /path/to/your.mobileprovision
  • 可以查看mobileprovision文件所有内容,无法编辑。
    在这里插入图片描述

2、编辑.mobileprovision

通过终端指令的方式编辑.mobileprovision

  1. 使用命令行工具security导出.mobileprovision文件的内容,将其保存为文本文件:security cms -D -i /path/to/MobileProvision.mobileprovision > output.plist
  2. 打开导出的output.plist文件,可以使用文本编辑器或命令行工具进行修改。找到"name"键所对应的值,并进行修改。
    在这里插入图片描述
  3. 修改完成后,将output.plist文件重新导出为 .mobileprovision文件:
    security cms -D -i output.plist -o modified.mobileprovision
  4. 执行完 3 后,终端报错,但仍旧生成了 modified.mobileprovision
    在这里插入图片描述
  5. 双击打开 modified.mobileprovision,Xcode报错:
    在这里插入图片描述
  • UUID可以理解为文件的唯一标识,在linux中经常用,因为linux一切皆文件,所以你的硬件设备也是文件,他也会有UUID。
  • 每个文件都有UUID,UUID是通过系统自动生成的。我们无法操控。

3、结论

  1. 苹果不允许我们手动修改.mobileprovision文件;
  2. 修改 .mobileprovision文件 前后,该文件的 MD5值发生变化;
  3. 经测试,在删除 .mobileprovision文件后,Xcode也会提示UUID属性缺失。猜测UUID就是简单的UUID,XcodeUUID错误,也只是新的.mobileprovision文件没有通过过苹果认证然后报错的,只是就是展示了这个错误而已。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值