Preparing AdHoc distribution in Titanium Mobile

Appcelerator Titanium is a very promising technology which allows you to write native mobile applications in Javascript for both iPhone & Android.

After playing around a bit with Titanium Mobile, I decided to showcase technology strengths to our stakeholders, particularly by letting them use KitchenSink demo for iOS.

In order to distribute iOS application into real hardware you’ll have to pass through a bunch of  Apple’s obstacles including:

  • Registering as an apple developer & getting valid certificate
  • Registering your app ID
  • Creating provisioning profile for specific iPhone UDIDs
  • Mess around with certificates/private keys to properly sign your application

It turns out that it’s not that easy to produce valid AdHoc distribution of your iOS app in Titanium, in this post I’m going to show you how to do it.


Before we start, make sure you have latest Xcode & Titanium SDK/Studio installed, as of the time of this writing Xcode version was 4.2.1, and Titanium mobile SDK was 1.8.1

For demo purposes we’ll use KitchenSink application provided as a showcase of Titanium mobile:

Clone & run KitchenSink in emulator

git clone

Open Titanium Studio and select File->Import->Import Existing Titanium Project


Configure project for iphone only

KitchenSink configuration

Run project on iOS simulator

KitchenSink  /></a></p><p>At this point,  Titanium will create an Xcode project for KitchenSink application. Wait for it to compile and run, then exit Simulator.</p><p><h2>Open generated Xcode project</h2></p><p><a href=Titanium mobile xcode project

Run Xcode, and open KitchenSink.xcodeproj , Objective-C code could be found at kitchensink/build/iphone

Manage project schemas

In Xcode, open Product->Edit scheme:

Page 1 of 2 | Next page