Titanium Community Questions & Answer Archive

We felt that 6+ years of knowledge should not die so this is the Titanium Community Questions & Answer Archive

adhoc distros for iPHONE / ANDROID

I see the other posts, but they are kind of dated… abot 5 months old.
is there any change in the way to do adhoc distros for iPHONE?

how would I do demo's for ANDROID?

Ideally, I owuld like to deliver a file that can be dropped into iTUNES.

— asked November 25th 2010 by vincent youmans
  • adhoc
  • iphone

5 Answers

  • hey Vincent…

    with Android its simple….. you can just use the .apk file to install it to your device and your device must have the "install from unknown source(non-market apps)" kinda option enabled….

    — answered November 25th 2010 by Satta Ravi
    1 Comment
    • you can check out this for iPhone

      — commented November 25th 2010 by Satta Ravi
  • for itunes its simple as well, build your app then go to the Build > iPhone > Release-iphoneos folder and there you will find the ipa. Drop that in iTunes and voila

    — answered November 25th 2010 by Glenn Tillemans
  • hi vincent,
    just as Sattanaathan Ravi mentioned, you have to create an AdHoc-Distribution File for your iPhone App including the device-ids you want to distribute to. This distribution-certificate is used in Titanium - Distribute "Provisioning File".

    Android is lot easier, just drop the *.apk file on the devices.

    — answered November 25th 2010 by Robert Rockmann
  • You can actually make an ad-hoc distribution that can be downloaded from your website and they can install directly to the device without even using iTunes or iPhone configuration utility. It is what I have switched to doing in my apps. From my About box, I add a button which takes them to my own download page to get a newer version.

    The first thing you need for this is a .ipa file, the same as what Glenn mentions for installing via iTunes. I don't get one of those when I do an iphone build. If Glenn does, then there must be something different in our configurations. I'd like to know what that is, because I create the .ipa manually. It isn't hard, these are the steps:

    • Build the app using the distribution build mode of Titantium
    • Navigate to the project's build > iPhone > Release-iphonesos folder
    • If there is a *.ipa file as Glenn says, just use it.
    • Otherwise create a new folder at that level called Payload
    • Move the project.app folder to inside the Payload folder
    • Zip the Payload folder
    • Rename project.zip to project.ipa

    That's it. The *.ipa is really nothing more than a zip file with a folder called Payload, and inside it the project.app folder and its contents. Inside the project.app folder should be your ad-hoc mobile provisioning and distribution files. But Titanium should have placed those there for you when you identified them in the distribution build properties.

    If you want to distribute via iTunes, the .ipa is all you need. But if you want to allow OS 4.x users to install directly from Safari, you need to place the .ipa plus a .plist file on the web server of your choice. The download link needs to point to the .plist file and NOT the .ipa file. The .plist in turn points to the *.ipa file to be installed.

    The contents of the .plist is simple, and need only be created once per project. It does not need to change when you push new .ipa builds to the web server.

    The process, including a sample *.plist to tweak and a simple php page with a download link is described here:


    Follow those instructions and your ad-hoc distro can be directly downloaded and installed via Safari as long as the user has OS 4.x; it will not work under iOS 3. The *.ipa also still needs the UDID of each device where it is allowed to run.

    If you want to eliminate that need, you need to qualify to obtain an Enterprise Development license. That got simpler two months ago when Apple dropped the requirement for there to be a minimum of 500 employees.

    If you do qualify and obtain an enterprise license, then you can generate a provisioning file which does NOT need any UDID values embedded. And there is no 100 device limit. It can be downloaded and installed by anybody at OS4, from your own server. No app store approval process delays – just build and push to your server and it is instantly available to your users.

    The enterprise provisioning certificate expires in a year, so users MUST get a new version or the app will quit working. The device also checks with Apple servers periodically (once a week or so I'm told) to ensure the certificate is still valid. If Apple has terminated your Enterprise license for whatever reason, the apps will quit after the next time they validate the license.

    As others said, for Android you just need the *.apk file. And the device settings must allow "install from unknown sources". AT&T users have that option blocked by the carrier. Google for ways to circumvent that.

    — answered November 26th 2010 by Doug Handy
    1 Comment
    • Doug,

      i've tried to do this your way, followed the instructions at samvermette.com, but i'm having a problem:

      • safari finds the page;
      • starts installing the app;
      • when it gets near the end it pops up : "Unable to Download application <appname> could not be installed at this time <Done> <Retry>".

      Any idea why this is happening?


      — commented December 6th 2011 by Miguel Carvalho
  • Just wanted to update this thread because the answers are stale, but the issue is still relevant. It is now possible to beta test both Android and iOS apps via testflightapps.com. Create the adhoc distributions as you normally would, create a testflight account, upload the .ipa or .apk, then follow site instructions on adding beta testers. It's a brilliant idea and VERY useful. Oh, and free.

    — answered November 15th 2013 by Michael Stelly
The ownership of individual contributions to this community generated content is retained by the authors of their contributions.
All trademarks remain the property of the respective owner.