Jeff Loughlin
Jeff Loughlin

Reputation: 4174

Creating an unsigned .IPA with Xcode 8.3

We have an iPad application for a customer who requires us to provide them with an unsigned .IPA file, which they then sign with their own credentials and distribute to their enterprise users.

Prior to Xcode 8.3, I've been able to create the unsigned .IPA using this command:

xcodebuild -exportArchive -archivePath $ARCHIVE_DIRECTORY'/'$APP_NAME'.xcarchive' -exportPath $OUT_PATH

Beginning with Xcode 8.3, that command gives me an error saying I need to provide an exportOptions.plist file, so I created one with the following contents:

<?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>enterprise</string>
</dict>
</plist>

and use the same command as above with the addition of -exportOptionsPList ./exportOptions.plist. Now I get this error instead:

No 'teamID' specified and no team ID found in the archive

I tried adding a teamID key to my exportOptions.plist file, but that was also unsuccessful, generating this error:

No valid iOS Distribution signing identities belonging to team xxxx were found.

(where xxxx is my team id)

I've searched for solutions and tried several without success. Most of the proposed solutions are for Xcode versions prior to 8.3 - the most common suggestion was to add CODE_SIGN_IDENTITY="" and CODE_SIGNING_REQUIRED=NO to the export command, but that did not help in my case (same error).

Upvotes: 4

Views: 3240

Answers (1)

Aashish1aug
Aashish1aug

Reputation: 805

I have successfully create unsigned ipa (On Xcode 8.3.1) as follow bellow steps.

1 GoTo /Applications then right click Xcode.app and click "Show Package Contents"

2 GoTo Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/ and copy the file SDKSettings.plist to desktop

3 Open the file copied SDKSettings.plist. Under "DefaultProperties" ==> "dict" find CODE_SIGNING_REQUIRED and change its value from YES to NO. Save the file

4 Copy this modified SDKSettings.plist file back to Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/ replacing the orginal file [YOU MAY SAVE THE ORIGINAL FILE AS BACKUP] Do the required AUTHENTICATION AS REQUIRED

5 Restart Xcode and open your runnable xcode project

6 In Project Navigator select your project and open Build Settings section of your porject and Select All sub-heading.

7 Under Code Signing find Code Signing Identity and for both Debug and Release modes set Any iOS SDK to Don't Code Sign.

To generate IPA:

1 In Xcode, goto Product and click Archive

2 7th step will build you project and creat an Archive. After the completion of the process, new window Organize - Archive will be opened. In the list of this window you can see your project. Right click project and click Show in Finder which will reveal *.xcarchive file

3 Right click the *.xcarchive file and click Show Package Contents and goto Products => Applications where you will see an app file with the name of your project "projectname".app

4 Open iTunes change view to Apps and drag the app file "projectname".app into the iTunes.

5 Right Click your app, click Show in Finder. There you will have you .ipa file.

Follow this link, I have use it also. Generating an unsigned IPA iOS application

Upvotes: 1

Related Questions