We have created the .xcarchive file code signing with our client\'s certificate & distribution provisioning profile, but we need to send the .ipa file to our client so t
Updated for Xcode 7 and 8
Here is a script to create the archive and generate the .ipa - tweak as needed:
PROJECT=xxx
ARCHIVE_PATH=/tmp/${PROJECT}.xcarchive
EXPORT_PATH=/tmp/${PROJECT} # DIRECTORY
mkdir -p $ARCHIVE_PATH
xcodebuild -project ./${PROJECT}.xcodeproj -scheme ${SCHEME} archive -archivePath $ARCHIVE_PATH -verbose
PLIST='{"compileBitcode":false,"method":"enterprise"}' # edit as needed
EXPORT_PLIST=/tmp/${PROJECT}.plist
echo $PLIST | plutil -convert xml1 -o $EXPORT_PLIST -
xcodebuild -exportArchive -archivePath $ARCHIVE_PATH -exportPath $EXPORT_PATH -exportOptionsPlist $EXPORT_PLIST
I also observed the same problem in one of my projects.
I resolved it by changing settings in target. For main project and dependency.
skip Install NO
After this change, goto Xcode->Product->Archive->Save for Enterprise or Ad-Hoc Deployment
We followed the same process and uploaded through Application Loader and Apple approved the app.
XCode > Project > Archive
XCode > Organizer > Distribute > Enterprise/add Hoc > Save As
Saves as YOURAPP.ipa.
Make sure Save for Enterprise Deploy remains UNCHECKED.
Download latest Application Loader.
tap 'Deliver Your App'
make sure new version in itunes connect in WAITING FOR UPLOAD state
Click on Activity... button
TIP: open Console.app to see XCode Validation errors
Click on ALL MESSAGE on list of logs on right.
Then in search enter 'XCode' or 'Application Loader'
to monitor any errors with your upload.
Note:
I did all this and still got email about missing 120x120 icons.
Forgot to update them in Build Target > General Tab List of new icon requirements for iOS7 http://www.icenium.com/resources/forums/icenium-general-discussion/missing-recommended-icon-file
You can create an IPA from XCArchive.
It comprises of three things :
a. dSYMs : dSYM files store the debug symbols for your app.
b. Info.plist : property list containing details such as ApplicationProperties, ArchiveVersion, CreationDate, Name, Scheme.
c. Products : This contains App file for your project.
Select Products -> Applications. This contains app file.
Now, drag-and-drop app file into iTunes (MyApps Tab).
Select your project.
Right click and select 'Show in finder'. This will locate newly created IPA file.
If you need this from the command-line, you can find all the details here: http://encyclopediaofdaniel.com/blog/xcarchive-to-ipa. In short:
xcodebuild
-exportArchive -archivePath <path to archive> -exportPath <path to output>
-exportOptionsPlist <path to export options plist>
Where a minimal options plist looks like this:
<?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>method</key>
<string>app-store</string>
</dict>
</plist>
Of course the method will change according to the provisioning profile type you used (app-store
is for distribution profiles). Run xcodebuild --help
to see the list of available options.
Now, Drag and drop this one to itunes store's app directory(find apps drop down menu at right top corner of itunes store). This will automatically converts archive file to ipa file. (Here, you can also do this -> drag and drop .app file anywhere in itunestore, once it get processed, search it back from search box).
then again right click on it and ->show in finder, this will show your ipa file. Now you can give this one to any user