问题
Need to generate .ipa
file for Ad-Hoc distribution. Client has provided only certificates, private keys and provisioning profiles which were enough to create .ipa
till Xcode 5. But in Xcode 6.1 when I export as Save For Ad Hoc Deployment
it gives message
To save for Ad Hoc Deployment, you need to add an Apple ID account that is enrolled in the iOS Developer Program for the development team \'xxxxxxxxxx\'
Is there any way of creating .ipa
without developer account credentials?
回答1:
Finally found a way for creating .ipa
build with xcodebuild command.
- Right click on
Archive
on Organizer. - Click
Show in Finder
. You can see
.xcarchive
file in Finder.Open
Terminal
andcd
to.xcarchive
path.- Using following command to generate
.ipa
file.
This will save .ipa
on Desktop.
xcodebuild -exportArchive -exportFormat ipa -archivePath <FILE_NAME>.xcarchive -exportPath ~/Desktop/<FILE_NAME>.ipa
Still looking for better solution, don't know why Apple removed this feature from Xcode 6 :(
回答2:
There are 3 WAYS to create .ipa WITHOUT Command & Apple Developer Account.
1. Fast & Best
(Works on all Xcode, All Mac OS, Bundled package can be used for OTA links like Diawi)
- Just build
(Command+B)
your app from XCode by setting proper code signing identities - From
XCode's
file search at left bottom, search for.app
(This will be under product directory) - Right Click on this
.app
file and select Show in Finder - Now, create directory and name it as Payload, copy
.app
into Payload directory. - Archive/Compress(.zip) this Payload directory, rename file extension from .zip to .ipa
2. Extract .ipa from organizer
(Works on all Xcode, All Mac OS)
- Create Archive
- Go to Organizer
- Get location of Archive by Right Click and selecting Show in Finder
- Now right click on this .xcarchive file and select Show Package Contents
Go to path
Products > Applications > YourAppFile
Open iTunes's on Mac and drag-drop this YourAppFile from above path in Apps tab. (NOTE: Delete the previous app with the same identifier if any)
Now right click on your app under Apps tab of iTunes and select Show in Finder, this is your .ipa file !!!
3. For devs having Xcode 5.x
(NOTE: Xcode 5.x doesn’t work on El Capitan, By this way you can archive using any Xcode but you will need Xcode 5.x to create .ipa)
- Create Archive using any Xcode version.
- Close Xcode.
- Go to Organizer window of Xcode 5.x and from Archive tab select your archive.
- On top right section select
Export
, click radio button with titleSave for Ad Hoc Deployment
- Click
Next
and Select desired code signing identities to save .ipa
回答3:
You can also create an IPA file using Xcode 6 & latest follow below steps:
- Create Build File of your Project
Command+B
- Go to Products folder & it will show app file right click "Show In Finder".
- Create an empty folder & call it 'Payload' then copy your app file in that folder.
- Archive Payload Folder & rename the zip file to
YourApp.ipa
回答4:
There is even better way without doing all the command line stuff.
Select "Save For Ad Hoc Deployment" & Click Next. Then open the "select a development team" drop down. It will have the option "Use Local singing assets" at the bottom. Select this option & Click Choose.
Here you go. The build will be created by Xcode without Apple ID Account.
回答5:
Another solution is to use Xcode 5.1.
回答6:
From some time (for example Swift & Xcode7) when you are to make a build formula is more complicated - xcodebuild requires exportOptionsPlist parameter:
xcodebuild -exportArchive -exportOptionsPlist app.plist -archivePath app.xcarchive -exportPath app.ipa
and app.plist contains:
<?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>
<key>uploadSymbols</key>
<true/>
</dict>
</plist>
来源:https://stackoverflow.com/questions/26928721/how-to-create-ipa-in-xcode-6-without-apple-developer-account