Search code examples
xcodeprovisioning-profile

Xcode stuck on embedding provisioning profile


Today I updated my Xcode to the version 9.3 (9E145). After that I created an archive and now I am trying to export it for development. However I see Xcode stuck on the following step:

XCode message

Is it a bug of Xcode 9.3? How can I solve it?


Solution

  • This issue is happening for me on Xcode 9.3 too and it looks like using xcodebuild from the terminal works as expected.

    You can export an archive by running (replacing the archive path)

    xcodebuild -exportArchive -archivePath "YOUR_XCODE_ARCHIVE_FOLDER/YOUR_ARCHIVE.xcarchive" -exportPath "output/"  -exportOptionsPlist "ExportOptions.plist"
    

    You'll need to set up an ExportOptions.plist file with a minimum of:

    • 'method' set to either 'app-store', 'enterprise', 'ad-hoc' or 'development'
    • 'compileBitcode' set to FALSE
    • For manual signing you will need to add your team and provisioning details

    More info on Export Options is available here EXPORT .XCARCHIVE TO .IPA USING XCODEBUILD...

    My ExportOptions.plist looks like (replace the bundle ID, provisioning profile, team ID and possibly the signingCertificate value):

    <?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>compileBitcode</key>
        <false/>
        <key>method</key>
        <string>enterprise</string>
        <key>provisioningProfiles</key>
        <dict>
            <key>COM.YOUR-BUNDLE-ID</key>
            <string>YOUR PROVISIONING PROFILE NAME</string>
        </dict>
        <key>signingCertificate</key>
        <string>iPhone Distribution</string>
        <key>signingStyle</key>
        <string>manual</string>
        <key>teamID</key>
        <string>YOUR TEAM ID</string>
    </dict>
    </plist>