苹果是否改变.mobileprovision文件格式,如何查看当前格式?

我在网上find很多文章,暗示你可以在文本编辑器中查看.mobileprovision文件的内容。 比如这个城市飞艇的post :

当为应用程序启用推送通知时,aps-environment密钥将显示在指定configuration文件的.mobileprovision文件中:

<key>Entitlements</key> <dict> <key>application-identifier</key> ... 

然而,我拥有的mobilprovision文件(在过去几天内获得)包含466 1/2行8个4位hex数字组(例如4851 3842 4176 2845 0a09 01a2 404d 4382 )。 我如何查看这种types的文件?

你使用的文本编辑器对你来说太聪明了:D。

你的编辑器发现这个文件实际上是二进制文件,并将其显示为hex转储 – 例如Sublime 2就是这样做的。 使用TextEdit打开同一个文件。 你会看到几行二进制乱码,然后是一些纯文本(XML),它们应该包含你正在寻找的信息。

但是,不要使用TextEdit编辑该文件,这将使其无法使用!

供应configuration文件已编码。 要解码它们并检查XML,可以通过命令行使用它:

security cms -D -i #{@profilePath}

其中#{@profilePath}是您的.mobileprovision文件的文件path。

一个更完整的Ruby例子是:

 require 'plist' profile = `security cms -D -i #{@profilePath}` xml = Plist::parse_xml(profile) appID = xml['Entitlements']['application-identifier'] 

如果你想Sublime Text 2能够读取.mobileprovisionconfiguration文件,这是设置

 "enable_hexadecimal_encoding": false, 

您可以使用openssl输出签名configuration文件的内容。

 openssl smime -in /path/to/your.mobileprovision -inform der -verify