Did Apple change the .mobileprovision file format, and how can I view the current format?

痞子三分冷 提交于 2019-12-31 09:18:10

问题


I'm finding many articles on the web where it is implied that you can view the .mobileprovision file contents in a text editor. For example, this Urban Airship post:

When push notifications are enabled for an app, the aps-environment key will appear in the .mobileprovision file specifying the provisioning profile:

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

However the mobilprovision files I have (obtained within the last few days) contain 466 1/2 rows of 8 groups of 4 hex digits, (e.g. 4851 3842 4176 2845 0a09 01a2 404d 4382). How can I view this type of file?


回答1:


You are using a text-editor that is a bit too clever for you :D.

Your editor finds out that the file actually is binary and shows it as a hex-dump - for example Sublime 2 does it that way. Open that same file using TextEdit. You will see a couple of lines of binary garbledegock and then some plain-text (XML) that should contain the information you are looking for.

However, do not edit that file using TextEdit, that will render it unusable!




回答2:


Provisioning Profiles are encoded. To decode them and examine the XML you can use this via command line:

security cms -D -i #{@profilePath}

where #{@profilePath} is the filepath to your .mobileprovision file.

A fuller Ruby example is:

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



回答3:


If you want Sublime Text 2 to be able to read .mobileprovision profiles this is the setting

"enable_hexadecimal_encoding": false,



回答4:


You can use openssl to output the contents of the signed profile.

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


来源:https://stackoverflow.com/questions/10988998/did-apple-change-the-mobileprovision-file-format-and-how-can-i-view-the-curren

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!