13 Replies Latest reply: Jul 28, 2008 11:51 AM by dev-alias
Proxima Level 1 (10 points)
In my previous development projects, after the app hits alpha, I'd start handing it around for testing and review. When we'd hit beta, it would usually go out to a more general testing regime. Trouble is, how are we supposed to do this with iPhone/iPod apps if they must all be funneled via the Appstore?

I have two guys in my shop who really want my app and I'd love to hand it to them but cannot unless I go through the agony of provisioning their devices. And since we're limited to the number of devices each developer can support that makes it all the more difficult. And for solo developers who may not have access to a QA department, fuggitaboutit.

Any ideas?

Mac Mini, Windows XP Pro
  • Scott_Lawrence Level 1 (60 points)
    This is where the AdHoc sharing would come into play, once that is an option.

    You could directly distribute your App to up to 100 people for testing.
  • Proxima Level 1 (10 points)
    It "seems" like AdHoc might be the solution, but what little has been published about it, suggests it is meant for enterprise-wide distribution apart from the Appstore, not person-to-person. And that I might need to have a server set up specifically to handle that. Not optimal when I all I want to do is to the guy in the next cube over a copy of my app to play with.

    But as newscasters are so fond of saying "Only time will tell."
  • robhedin Level 2 (355 points)
    Ad-Hoc is separate and distinct from Enterprise distribution.

    Specific examples of where ad-hoc distribution would be used were things like a professor providing an application to his class, or an individual providing an application to a number of friends.

    Ad-hoc is limited to a distribution of <100 units and doesn't require going through the app store, so it's pretty much well suited to setting up an alpha/beta program (or any other situation where you want the app delivered for "free" but not to a wide audience).

  • etmobile Level 1 (5 points)
    All well and good until you hit 0xE8000001 error. Has anyone gotten ad hoc distribution to work?
  • diy_neuroscience Level 1 (0 points)
    can't get it to work
    followed all the instructions in the ad hoc tab of the distro section of the program portal,
    but getting that same 0xE800001 error too,
    have tried:
    3G with 5a345
    3G with 5a347
    1st gen with 5a345 set up as an xcode development device
    1st gen with 5a347 set up as a normal device (freshly restored)

    no luck yet, getting pretty frustrated.
  • dev-alias Level 1 (0 points)
    Is Ad Hoc distribution supposed to work on PCs? Where is the best documentation for this? The "How-To" stuff in the program portal doesn't really explain the process fully.

    I have a PC with iTunes 7.7 and an Ad Hoc Provisioning Profile. I use that profile to build an Ad Hoc version of my app. I try to drag and drop the profile into itunes, and nothing happens (AFAIK).

    How can I verify that this is working?

    Thanks everyone.
  • mike.mcfin Level 1 (10 points)
    I just distributed my beta to 10 testers via adhoc-profile. Worked as expected and descriped in docs.

    Suppose you have developer certificate and appId stuff ready in portal.

    1) collect UDID numbers from beta-testers and add to portal
    2) Create distribution provision profile (provision->distribution->add profile->add hoc->pick appid and devices.
    3) generate distribution certificate for adhoc-distribution
    4) download distribution_identity.cer and add to keychain
    5) download distribution provision profile and drag to xcode or itunes

    Exit and restart xcode.
    Make sure you have additional plist included for "get-task-allow:false" workaround (search forums if unfamiliar)

    From xCode make new build-target (distribution) by cloning release. Follow instructions in Portal Userguide PDF. Go to project-settings (distribute target) and change:

    Code Signing Identity\any iPhone OS Device = iPhone Distribution: <your name in certificate>
    Code Signing Provision Profile\Any iPhone OS Device = Select provision profile you downloaded. It should be on list to pick.

    Clean build and build again. You get app.bundle. Open it and verify it contains _CodeSignature -subdir with signature and embedded.mobileprovision in root.

    Distribute app.bundle and distribution provision profile to beta-testers. (File named xxxx.mobileprovision) xxx=which profile name you entered in portal.

    Or just read the Portal User Guide. It's actually all there quite clearly
  • mike.mcfin Level 1 (10 points)
    AdHoc works with PC-users also. They need to drag the mobileprovision-file to open iTunes client - not to the iTunes icon like in mac.
  • johnnylundy Level 1 (10 points)
    Thanks for the summary. I just finished reading the PDF and want to go the ad-hoc process.

    Will my users have to do any special iPhone OS installation or any restore of their devices after testing? This is the part I couldn't find a clear answer to.

  • mike.mcfin Level 1 (10 points)
    No. They just need a device (iPhone or Touch) with 2.0 Software (OS).

    They first install the mobile provision profile (supplied by you) by dragging it directly to iTunes. Re-dragging should popup message-box that profile is already installed so it's easy to verify. Also this profile is visible on the device under settings->common->profiles.

    Then they install the app.bundle (provided by you) by dragging it to iTunes->library->software.

    Just be careful with xCode build-settings and don't forget the plist-stuff. That caused some problem to me until I found help on these forums.
  • dev-alias Level 1 (0 points)
    "...search forums if unfamiliar..."

    I suppose the docs ARE complete if you consider forum posts from the community "docs"...

    I found a great thread earlier today that described creating a "dist.plist" file. Worked like a charm.

    Thanks for all of the info.
  • mike.mcfin Level 1 (10 points)
    Well, the docs ARE pretty decent. I think this dist.plist has something to do with last minute changes.

    When I started mobile development for symbian back in 2002 the forums WERE the docs - the only docs (ok. headers were there too). We should consider ourselves quite privileged with the documentation level provided - I know I do.

    Maybe they are not (yet) perfect but they are by far the best and most comprehensive I have ever worked with. Not trying to kiss anyones *** here but after you try to develop apps with API-headers only documentation you appreciate current situation
  • dev-alias Level 1 (0 points)
    Agreed! I personally love all of the sample projects (hooray!). Coming from a console homebrew background, I can definitely appreciate Apple's work with documentation. Also, the forums actually have informed developers like yourself that us newbies can subscribe to, so... hats off to Apple!

    Thanks again.