Code Signing With Embedded Provisioning Profiles

Hello,

If I have an app that utilizes Push Notifications, my application's entitlements will look like the following:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.developer.aps-environment</key>
    <string>development</string>
</dict>
</plist>

As a result, I see that the app bundle includes a embedded.provisionprofile binary file since Push Notifications requires it.

Say I copy the app bundle over to another location on my machine. When I code sign the newly copied app bundle, will I need to do something with the embedded.provisionprofile?

Best,

Brando

Accepted Reply

I was originally trying to resign the bundle and other components after I modified the info.plist but the signature was invalid. I figured I only needed to resign the bundle and pass --preserve-metadata=identifier,entitlements,requirements in my call. This is my codesign call:

codesign -f -v -o kill,runtime --timestamp --preserve-metadata=identifier,entitlements,requirements -s <ID> <Bundle>;

Replies

I guess a better case scenario would be if I copied over a bundle to a new location on my machine and modify its info.plist to change the bundle version, would I need to recreate the embedded provisioning profile?

I was originally trying to resign the bundle and other components after I modified the info.plist but the signature was invalid. I figured I only needed to resign the bundle and pass --preserve-metadata=identifier,entitlements,requirements in my call. This is my codesign call:

codesign -f -v -o kill,runtime --timestamp --preserve-metadata=identifier,entitlements,requirements -s <ID> <Bundle>;