Archiving And Distributing Ad Hoc Builds With Xcode 4

Note: If you are having issues with archives that say “This kind of archive cannot be signed” and won’t let you create an IPA then please pay particular attention to the part of this post titled Skip Install.

With my recent upgrade to Xcode 4 I have run into some problems archiving my apps and creating ad hoc builds to distribute to clients. I think I finally have a handle on all the steps and thought I would share them here for your reference and mine.

Before we get into creating an ad hoc build I want to put in a word on distributing ad hoc builds in general. It used to be that the way to do this was to build your ad hoc app signed against your ad hoc distribution provisioning profile and then you would share both the .app file and the .mobileprovision file. The user would then have to drag the .mobileprovision file into the left bar in iTunes and do the same with the .app file. A much better way is to distribute an IPA file signed with the ad hoc distribution provisioning profile so that the user just has to double click the IPA file to install in iTunes.

To create an IPA file used to take a bit of work, but for some time now there has been a very handy way to do this directly in Xcode through the Archive (previously Build & Archive) option. When you Archive an app it puts the Archive into your Organizer where you can then choose to share the app as an IPA file and select a provisioning profile to sign it with. I have a wild card app ID that I use for all my development work and also to create the ad hoc distribution provisioning profile. I always give the distribution profile a generic name so that I can use it no matter who I happen to be working for.

Anyway, that is the big picture. Here are the details:

Note I am assuming you have already created and downloaded a distribution provisioning profile that includes the UDIDs of the people’s devices you are distributing to.

Make sure you have set an icon file to use

If you don’t have an app icon you can’t create an ad hoc distribution, so make sure you add one to your project and set its name in your Info.plist.

Create an Entitlements.plist

NOTE: This may still be required for distributions by TestFlight.

An Entitlements.plist file is no longer necessary with Xcode 4 per Technical Note TN2250. It says:

“Previous to Xcode 4.x, it was required that the developer create a Code Signing Entitlements file in the Application Bundle for Ad Hoc testing, that defines the entitlement “get-task-allow” with a value of “false” (un-checked). However with Xcode 4 that is no longer required so long as the application is shared via deferred signing on the Application Archives panel in Organizer. See the section Using the Build And Archive feature of Xcode for Deferred Code Signing for more information.

Furthermore, if you are receiving an error similar to:

The app 'Foo' was not installed on the iPhone "foobar's iPhone" because the entitlements are not valid.

Try removing the Code Signing Entitlements configuration from the Project and Target “Build Settings” tabs in Xcode 4, and then try your Ad Hoc build again.”

For posterity I am leaving the instructions for how to create an Entitlements.plist here, even if you no longer need it:

Right (or Option) click on the Resources folder in the Groups & Files pane and select New File… then in the iOS list select Code Signing, then Entitlements and hit the Next button.

Screen shot 2011 04 06 at 4.26.59 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

The name of the file defaults to “Entitlements.plist” which is fine so just hit Save.

Screen shot 2011 04 06 at 4.33.28 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

You used to have to edit the Entitlements.plist at this point but I haven’t found that to be necessary with Xcode 4.

Create a new configuration in your Project Settings

I always create an Ad Hoc Distribution configuration. Click on your project in the Groups & Files pane and then select your project in the column that shows your project and targets.

Screen shot 2011 04 06 at 3.52.12 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

If you are not already on the Info screen, click the Info tab. Next click the ‘+’ button and select Duplicate “Release” Configuration.

Screen shot 2011 04 06 at 3.53.04 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

Give the new configuration a name. I always name mine “Ad Hoc Distribution”. (I creatively name the one I submit to the app store “App Store Distribution”)

Screen shot 2011 04 06 at 3.53.30 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

Setup your Target

Now select your Target (below your Project), make sure you are on the Build Settings tab and that you have all and combined selected and scroll down to Code Signing. Set the iOS SDK for your Ad Hoc Distribution to your generic ad hoc distribution provisioning profile, or if you only have the one distribution provisioning profile just set it to iPhone Distribution which will default to the one you have.

Screen shot 2011 04 06 at 4.42.35 PM1 Archiving And Distributing Ad Hoc Builds With Xcode 4

Just above this you need to fill in “Entitlements.plist” for the Code Signing Entitlements for your Ad Hoc Distribution.

Screen shot 2011 04 06 at 4.52.19 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

Skip Install

If your project relies on a static library (such as cocos2d) then you need to do one extra step to make sure it gets included in the app binary correctly. In the left pane with your Project and Targets you need to select the static library and then in the right pane in its settings under Deployment, you need to set Skip Install to Yes for the Ad Hoc Distribution. (The same would apply for an App Store Distribution) NOTE: This is only necessary if your project contains static libraries and must be set on that static library, not your apps Target or your Project.

Set a configuration for your Archive scheme

In the drop down menu in your tool bar next to the Run and Stop button, select Edit Scheme. Select Archive in the left pane and then set the Build Configuration to your Ad Hoc Distribution and click OK.

Screen shot 2011 04 06 at 4.56.41 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

Create the Archive

You are now ready to create your Archive. In the top menu select Product and then Archive.  When it is complete you will be taken to the Organizer on the Archives tab.

Create the IPA

To create the IPA file, with the archive highlighted, click the Share button and then confirm the provisioning profile you want to use. If you only have the one distribution provisioning profile it should default to the correct one. Click Next and then give the IPA file a name and save it.

Screen shot 2011 04 06 at 5.03.34 PM Archiving And Distributing Ad Hoc Builds With Xcode 4

Now to distribute your ad hoc all you have to do is email the IPA file and instruct your client to double click the file and then sync their device.

Hope this helps some people migrating to Xcode 4 or even people just starting out.

Share and Enjoy:
  • printfriendly Archiving And Distributing Ad Hoc Builds With Xcode 4
  • digg Archiving And Distributing Ad Hoc Builds With Xcode 4
  • stumbleupon Archiving And Distributing Ad Hoc Builds With Xcode 4
  • delicious Archiving And Distributing Ad Hoc Builds With Xcode 4
  • facebook Archiving And Distributing Ad Hoc Builds With Xcode 4
  • yahoobuzz Archiving And Distributing Ad Hoc Builds With Xcode 4
  • twitter Archiving And Distributing Ad Hoc Builds With Xcode 4
  • googlebookmark Archiving And Distributing Ad Hoc Builds With Xcode 4
  • reddit Archiving And Distributing Ad Hoc Builds With Xcode 4

About jjob

I'm a technologist and a music producer. I make sound, write code and build things with electronics and microcontrollers.
This entry was posted in app, code, iOS, iPad, iPhone, XCode and tagged , , , , , , , , . Bookmark the permalink.

86 Responses to Archiving And Distributing Ad Hoc Builds With Xcode 4

  1. Shane says:

    Jjob this is great. Apple owe you money for tech writing.

    I have a question, how does it work if I have new devices to ad hoc to after build? Does this new process allow updating the provisioning profile on developer.apple.com and then resigning? That is without having to rebuild from scratch?

    • jjob says:

      Exactly. You would not need to rebuild the app. Instead you would login to the dev center, add the new devices, edit the old profile to include these devices and then download your updated provisioning profile and install it into Xcode. Then go to the Archive section of the Organizer and when you share the app just choose your new provisioning profile. Hope that helps.

  2. Tricky says:

    Inavluable. Thank you. I’ve been struggling with this on X Code 4 for sometime.

    I assumed as my ad-hoc config had been selected in the drop-down menu next to run/stop, this would be the config that was used. I thought wrong. What’s more, the first indication that something WAS wrong, was the ‘invalid entitlements’ message received in iTunes.

    Apple need to make it clearer what profile is used when creating an archive somehow.

  3. Kris says:

    Thank you so much for the tutorial. I’ve managed to submit 3 apps already with Xcode 4, but it’s always been a trying and error with no clear idea on how I made it to work. But your tutorial makes me feel like I know finally what to do.

    One quick question, have you worked with Google’s YouTube API at all? Please say you have. lol

    If you have, please write a tutorial on how to use it in one’s project. When is out there is not clear at all for new developers like myself.

    Thanks once again.
    Kris.

  4. David says:

    Hi,, Its really helpful when change to xcode4.. ThankYou very much :)

  5. If you have a 3:rd party SDK you need to add “$(SDKROOT)/ResourceRules.plist” to the “Code Signing Resource Rules Path” key in the targets build settings.

    • jjob says:

      I have never had to use the ResourceRules.plist before. In fact I have never even heard of it before. I have deployed many apps using third party SDKs into the app store and have never once had to specify the location of the “Code Signing Resource Rules Path”.

  6. Paul-Marcel says:

    Excellent posting; thanks for taking all the time to put that together so well after you no doubt beat your forehead flat figuring it all out. I’m pretty new to IOS dev and find that all the resources out there are based on XCode 3.x. Since I’m so new to XCode, I don’t have enough experience to map it over to XCode 4. I just got my IPA built after flattening my forehead for a day last month; wouldn’t have happened without this page…

    • jjob says:

      Be comforted in the knowledge that all iOS developers have had to ‘flatten their forehead’ over the whole certificate/provisioning/build/distribution process at some point. I’ve been spending some time at Apple this year and can tell you that even their internal teams often find the whole process confusing and difficult. Invariably we will all have to beat our heads again when things change or when we miss one of the many details we need to track for success but glad to have helped you this time around. :-)

  7. rahul says:

    In Xcode 4 resource folder is not available. so where are we create a entitlement file. i am creating it in supporting files folder. It gives me entitlement file missing error

    • jjob says:

      It doesn’t matter where you create the entitlements file so long as you reference it correctly in the build settings. If it is at the root of your project folder it will just be Entitlements.plist. If it is in a folder it would be folder_name/Entitlements.plist

  8. Brian says:

    THanks so much for this posting. I am intrigued with the pix on your site regarding the “Light box”. Do you have a description of what this is? What do your iphone app(s) do…

  9. daaa says:

    Thanks, that was helpful, especially the “skip install” part.

  10. Anuj Tyagi says:

    Thanks a lot jjob… It was very frustrating for me… I was doing everything the way I used to do in XCode 3 but was not able to install the application. The “Set a configuration for your Archive scheme” worked for me…

    :o ). Thanks again…

  11. Marco says:

    Appreciated.
    Perhaps you can help me. I had to blitz my master keychain on my MacBook, and (of course) all of my old provisioning and certificates were foo-barred. I patiently requested and installed a new certificate and built a development profile. Fine.

    Ahhh… but now I’m trying to build an AdHoc distribution profile, and when I download one from the Portal, XTools reports “Signing identiy not found.”

    To be honest, I’ve never really gotten my brain around all of this certificate/keychain/provisioning profile stuff. Now I’m stuck.

    Any help would be truely appreciated.

    • jjob says:

      Sounds like you forgot to make a distribution certificate. You need to make one for development and one for distribution.

    • Robert says:

      It sounds as if the AdHoc profile has your “old” certificate instead of the new one.

      When you create a certificate, you are actually creating a public/private key-pair; the private key identifies you. This is why it is important to export the private key after creating the certificate (but please, make sure you export it securely). If you develop on a different computer, you can import the private key. (And if you sell your computer, please remember to delete the private key first!).

      The public key is uploaded to Apple and allows them to validate your messages (files and requests). Anything you sign with your private key can be validated with your public key — no other public key will work; this is how “signed messages” work!

      When you create a provisioning profile, the profile associates the following:
      list of identities (certificates)
      list of devices (based on unique device id)
      application identifier

      In order to be used to sign an application, a provisioning profile must include your developer certificate in its list (it must also match the App ID). If you don’t have a private key certificate matching one of the public certificates in the profile, you won’t be able to use it.

      Hope that makes sense.

      To solve your problem, I would walk through the process carefully. Make sure the only certificate is the one you are currently using. You may want to delete any old provisioning profiles to reduce any chance of confusion.

      Good luck.

  12. Mr.HuJinTao says:

    God save America, you save China!
    - from deeeeep heart of an app developer in Beijing.:)

    I paid 1 whole night on solving “Entitlements.plist not valid” error, tried every methods(modify values in plist,regenerating all files…) but failed.
    Finally and luckily I got your helpful essay.

    Many many thanks!

  13. Roger says:

    Can you use the same Entitlements.plist for adhoc and development? In xcode 3 you could not due to the get-task-allow needing to be set to NO in adhoc and YES in dev. Did that change? Your instructions are not clear on this.

    I was building adhoc builds just fine until upgrading to xcode 4, not I get:

    warning: This bundle is invalid. The application-identifier entitlement is not formatted correctly; it should contain your 10-character App ID Seed, followed by a dot, followed by your bundle identifier: PBWFXXXWXX.com.xxxxxxxx.* (-19054)

    For the life of me I can figure out what changed. If I add the PBWFXXXWXX. to my Bundle Identifier in my Info.plist file (it was not needed in xcode 3), it says my provision is not valid. Do we need to remake adhoc distribution profiles for xcode 4?

    • jjob says:

      I have never used an Entitlements.plist for development, only for ad hoc distributions. In Xcode 4 I create an Entitlements.plist (and do not edit it at all) and only use it in the build settings for the ad hoc distribution configuration.

  14. Awesome post. I’m definitely give you props on my blog for this one. Saved me a lot of hassle, as so much changed in Xcode 4 all in one go I got frustrated trying to figure out what to do about ad-hoc builds!

    gb

  15. Wilma says:

    Any idea what to do if you get an error message “The operation couldn’t be completed. No such file or directory”? I get this after I have selected Share> my adhoc provision profile >Next and then the Save As window.

  16. James says:

    How on earth did you figure all this out? You are an absolute lifesaver, not to mention saving my marriage, my dogs, computer. Thank you.

  17. Uwe Nitsche says:

    Thank you so much for publishing this.
    I’m just so glad the Apple products are sooo intuitive
    Naturally it would be nice if the cash richest company in the world would
    a) Do this documentation themselves or
    b) pay you for doing their work

    Thanks again!

  18. Thank you, that helped alot!

    One thing, the is not needed anymore if you use xcode 4:

    “Previous to Xcode 4.x, it was required that the developer create a Code Signing Entitlements file in the Application Bundle for Ad Hoc testing, that defines the entitlement “get-task-allow” with a value of “false” (un-checked). However with Xcode 4 that is no longer required so long as the application is shared via deferred signing on the Application Archives panel in Organizer.”

    see: http://developer.apple.com/library/ios/#technotes/tn2250/_index.html#//apple_ref/doc/uid/DTS40009933-CH1-TROUBLESHOOTING_GUIDE-CODE_SIGNING_ENTITLEMENTS

    • jjob says:

      Thanks for the tip. I had noticed that I could get away without an Entitlements.plist but I hadn’t read the official word. I will update my blog post. Thanks again!

  19. Liz says:

    Thank you for this … I’m a new app developer, and not a very skilled code monkey, so the entire process was baffling until I found this tutorial.

    One note … I kept getting the code signing errors that my Entitlements.plist file was missing. I tried with the Entitlements.plist file in all sorts of places, nothing worked. Finally, I removed both the file *and* the target reference to it, and my Archive built.

    As it’s written, the tut says an Entitlements.plist file isn’t needed, but you need to specify it in the target. That didn’t work for me. Fortunately, this was just 30 minutes of head banging, not all day.

  20. Drew Lustro says:

    I was about to kill myself trying to figure out the root of this problem. It’s always something epicly stupid with Xcode.

    The Ad Hoc distribution Code Signing property was properly set under the Project Level column but not under the Target column.

    I can’t believe something so minor ends up causing an ultra ambiguous “CodeSign Error”. Thank god it’s resolved now.

    • jjob says:

      Yeah, we’ve all been there. :-) Its a good idea to always check your project settings AND your target settings. Glad you made it through.

  21. AD says:

    I never get any archives in my organizer at all. Followed all tutorial guides several times now

  22. Ben says:

    I have a serious ongoing issue with Xcode 4. I have been using Xcode 3 for years, and had everything set up perfectly. All my Build Configurations worked A-OK.

    I updated to iOS 5 GM, and naturally I have to use Xcode 4 to submit my app to the Store or use TestFlight. I can’t change my Build Configuration. In the past I’ve tried making new “Schemes” (which are stupid IMHO, when the old system worked 100%), and everytime I do, I set everything the same, I go “Product” > “Archive”….it works, and I share the IPA to my Desktop, to upload it to TestFlight, or I save it as a ZIP and send it to Application Loader. Beforehand I have ENSURED that EVERYTHING under my new Scheme for AdHoc is set to “AdHoc”.

    IT NEVER WORKS. On TestFlight, my testers will install it, and immediately the application will crash. It won’t even launch, no matter how I build the app, regardless of Scheme. It worked 100% and I have made ZERO changes since updating to Xcode 4. Application Loader reports errors, and I;m ready to pull the plug on iOS 5 you have no idea how near I am to ripping the hair from my skull and running disinhibited down the street screaming. It’s simply baffling. I’m literally flummoxed.

    Xcode 4 only works when I wish to “Debug” my app on my own device. It builds, installs and runs perfectly. Why won’t it work on AdHoc or App Store?

    PLEASE HELP! I’m ready to pull my hair out.

    • jjob says:

      I understand your frustration, all of us have had to work through these kind of issues at some point.

      The reason your IPA is crashing is that your app is signed incorrectly. You say that you cannot change your build configurations but there is just as much control over that in Xcode 4 as in previous versions. Are you certain that you followed all the steps in the tutorial? I would recommend going through each step from the top especially making sure that your archive scheme is using the correct build configuration and that that build configuration is using the correct provisioning profile.

      • Ben says:

        Yeah, 100% sure I’m following absolutely every single step. The weirdest possible part of the whole scenario is the fact the resulting builds for AdHoc are about 17MB, whereas every other build is 28MB – which has been the size for about a year.

        Just followed it right back through, and removed the extra schemes that I created. I just fixed up the Archive Scheme inside my default Debug configuration, and tried to build it again. No go, back to 17MB and it refuses to launch on any devices.

        • Ben says:

          Actually, I “symbolicated” the crash reports, and it seems they’re all getting “EXC_BAD_ACCESS” when it tries to launch, whereas I don’t whenever I Debug it. In Xcode 3.2.6, this never happened regardless of AdHoc, Debug or Distribution. Xcode 4 seems to have broken my code.

          • jjob says:

            If you are getting an EXC_BAD_ACCESS you are referencing a deallocated object somewhere in your code. If you have symbolicated your crash report you should be able to see the problem.

            If you want to share your project with me I would be happy to take a look at it.

  23. Ben says:

    That would be good. Do you have TeamViewer?
    I just don’t understand how it crashes instantly after showing Default.png, ONLY on the AdHoc build when I send it to my testers. On Debug it works fine. Same with App Store, actually. I submitted it, Apple approved it, and everyone have been emailing me saying it doesn’t open.

  24. DCL says:

    Some more thank you’s to add to the list above.
    I was getting nowhere trying to upgrade (???) Xcode 3 to 4. After a couple of days I got desperate and searched the forums. Thank God I found your post.
    Thank you, Thank you, Thank you.
    PS: FYI, my solution was to go to build settings and simply delete the reference to “entitlements” in the code signing area.

  25. pfFredd says:

    Thanks a lot! Great tutorial!

  26. John Baldwin says:

    Thank you. Very helpful.

  27. Rendy Pranata says:

    Hi, I was following your step but Xcode always throw a compile error stating that “file not found” when pressing the Build->Archive.

    What makes my head spin is, the build was fine even in the Debug scheme mode, it runs fine for both device and simulator. I use my own static library project which has dependencies towards the other third party library as well.

    Any idea? Thanks a lot


    Cheers,

  28. William Dornenburg says:

    I built my adhoc certificate based on my distribution certificate. I can submit to testflightapp with no problem. When I submit to the store it passes all tests and goes into waiting for review status. I have Xcode set for automatic provisioning and it looks as if it is set for my adhoc certificate. Since it passed validation and submitted will it make it through. I am new to adhoc and I didn’t know people changed signing for the store.

  29. Chim says:

    I read so many articles on this regard but only this article really solved the issue. Great job man.

  30. Bob says:

    Excellent article. I was having a time trying to create the files and get them to sync onto my iPad. I followed your instructions and it worked perfectly. Thanks so much, I’ve spent hours trying to configure Xcode 4 properly and your article did the trick.

  31. Bozo says:

    Wow. That info about static libs and the Skip Install setting is golden.

  32. Steven Green says:

    Thanks – really appreciate the help.

  33. Jay says:

    Just want to say thank you for the help. You’ve saved me alot of time!

  34. Pingback: How can I find out why my "Ad Hoc" build for iPhone will not install?

  35. dnp says:

    Hi !

    On my project I have 2 dependencies (CorePlot and ZXing) and when I want to create an IPA file I receive the following error: “this kind of archive cannot be signed”.

    In my dependencies I set under the Target->Skip Install to YES , but in dependence I leave this setting to NO.

    In main project (this not contains static libs) I set ‘Skip Install’ to NO (Targets and Project)

    In dependencies I have static libs.

    I receive the same error in this situation …

    What I’m missing ?

    Thanks !

  36. Mumen says:

    Amazing tutorial, Good Job.
    i wanna ask you jjob about a situation I’m facing now, I’ve successfully produce Adhoc and sent it to my client, but, recently, the app install but it doesn’t running. and if i build and run the app with the development certificate it run successfully, and i didn’t change any settings or info in the app. What you think the problem is, i appreciate it if you can help me.

  37. Pingback: Una vez terminada la app en xcode. que se hace????

  38. bg says:

    Nope, does not work. Gives me just an archive and I followed all the Skip Install for my CorePlot
    Any other thoughts?
    Please.

  39. bg says:

    I got it. Went to Coreplot-CocoaTouch, which is dependence of my project targets. Then went to Coreplot-CocoaTouch Targets. In Targets opened Build Phases. Then opened Copy Headers. There I had some of headers in Public, some in Private and some in Project. Moved ALL of them to Project.
    Of course, in Build Settings of Coreplot-CocoaTouch Targets checked that Skip Install was set to YES in Deployment options.
    And this time Archive made an archive that could be signed and .ipa produced.

  40. Adam says:

    How do you SIMULTANEOUSLY have the Scheme-step “Archive” set to “ad hoc” and “app store”?

    To get around this, I’ve been duplicating the *target*, rather than the “debug, release, etc” builds – each Target has a unique scheme setup, so I can set an App Store Target with Archive=AppStoreBuild, and an Ad Hoc Target with Archive=AdHocBuild.

    This works, except … it reveals lots of obvious small bugs in Apple’s Xcode, which suggests Apple doesn’t care / doesn’t use this approach.

  41. Pingback: - Francesco Ficetola

  42. SamInPA says:

    “I’m a technologist and a music producer.”

    You can add “part-time saviour” to that, assuming you still mis-spell it up there :)
    Thank you.

  43. Niv says:

    Thanks for the tutorial. I followed your steps exactly and could able to find the exact output. But the person to whom i mailed that application responding that he is not able to download that .ipa file getting some error like ‘browser can not download this file’. May i know why this happening.
    And one more thing i used the same provisioning profile certificate for both to developing the application and to make Ad Hoc Distribution is it the problem for that bug to raise at client side

    • jjob says:

      A “browser can not download this file” sounds like a browser issue, not an issue with an IPA file. Dropbox or TestFlight are two convenient ways to get an IPA file into your clients hands.

      Regarding certificates, you should definitely have two separate certificates, one for development and one for distribution.

      • Niv says:

        Thank you jjob… I need a bit more help please
        While creating distribution certificate is it compulsory to specify the clients UDID…
        And if you made a snapshot for clients to install our ad hoc distributed application it will be great help…

  44. Pingback: SKYBONDSOR » Sun Boxes Mobile App

  45. Akshat Paul says:

    So far the best post on ad-hoc distribution.
    Hey btw ur twitter follow link is not working.

    • jjob says:

      Thanks. I just tested the Twitter follow button and it took me to my Twitter page as expected. Maybe Twitter was down when you tried it?

  46. Pingback: How to distribute ad hoc build with XCode 4 « CSS Tips

  47. Pingback: How to distribute ad hoc build with XCode 4 | t1u

  48. Pingback: How to distribute ad hoc build with XCode 4 « w3z.info

  49. Pingback: How to distribute ad hoc build with XCode 4 « The Agile Warrior

  50. Hua-Ying says:

    Thanks! I was having getting the error “could not install app because of invalid entitlements” when I tried to install a adhoc build from The iPhone configuration Utility. Your instructions fixed the problem! Specifically adding a new Ad Hoc target and then setting up the Ad Hoc target to sign by iPhone distribution seems to have fix the issue. Thanks again!

  51. sir333 says:

    Looks great – BUT, the user to whom I emailed the IPA file is totally Cloud based – they don’t sink their iPhone or iPad to any Mac – they don’t even own a “real” computer anymore, just an iPhone and an iPad. So when they received the email with my IPA file and clicked on it, they got a message saying: “Mail cannot open the Attachment”. How can they install this file and sync it with their iPhone then?

    • jjob says:

      Check out TestFlight. It allows you to upload your IPA file and your client to download and install it directly from their iOS device.

      • sir333 says:

        Yeah, “TestFlight” came up in my searches on this subject – but I like your approach better :-) I much prefer doing this sort of thing myself and keeping things local – as it were – than signing up for yet one more service. Plus your method works :-) I sent the IPA to another tester who does have a machine to sync-up to and he successfully installed my IPA on his iPhone. Very cool – excellent tutorial Sir. Thanks much.

  52. Pingback: iphone app don't want to build my ipa | PHP Developer Resource

  53. Adil Soomro says:

    Very nice blog entry. Very Helpful, made my day :)
    Thanks

    Happy Coding!

  54. Piyushkumar says:

    nice blog. but can you tell me. how to deveope in xcode 4.2.3 (means ios 5.1).

  55. Pingback: Archiving And Distributing Ad Hoc Builds « v: drive

  56. Appdevboy says:

    Great info. Really helped me. Thanks.

  57. Leander says:

    I have a static library, but there is not AdHoc group in there.
    For release the skip install is set to No.
    How do I add the add hoc group there?????

  58. Martin says:

    What happens if i sign my archive with default development XCode team provisioning profile? The one named “iOS Team Provisioning Profile *” in the profile list.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>