iOS package for distribution with 1.4+

Composite image of nature superimposed on a woman's profile

There have been a few questions around how to package for distribution for iOS starting with Titanium SDK 1.4. Apple has changed the requirement on how you package and submit your application to iTunes connect. You can no longer use the web-based portal to upload your application.

I thought I’d explain the steps on how to package and distribute with some screenshot walk throughs.

In Titanium, you’ll do the normal package for distribution step, selecting your distribution profile.

NOTE: I have circled the “Select Distribution Location” since this is no longer required. In 1.4 SDK, we ignore this value. We didn’t want to rev Titanium Developer just to remove this field and to keep in backwards compatible. However, you will still need to enter a value for this field. In a future release of Developer, we’ll improve this.

After packaging, we’ll automatically start Xcode Organizer. Select the “Archived Applications” on the left menu and you should see your Application with a package date.

If you select the date, you will be able to enable the buttons at the bottom.

First step, you’ll want to validate your application. This will actually validate your application with Apple prior to submission and let them perform some pre-flight checks.

You’ll need to login to iTunes connect before you can validate. (The first time, you’re credentials will be empty. Subsequent times, if you check “Remember my…” if we remember).

After successful login, you’ll need to choose the appropriate application and profile. IMPORTANT STEP: If you don’t have an application setup in iTunes Connect (on the website), these subsequent steps SILENTLY FAIL.

NOTE: Organizer gives no visual clues to as what’s happening. The UI will lock-up while it runs network operations and when it fails, it simply does nothing and you have no idea. The biggest problem I’ve encountered is when someone doesn’t actually have an application setup (see above).

Choose your app and profile and you should see this alert result (after a few seconds to minute):

Since you’re building with Titanium, everyone should work. However, we’ve seen a few issues mainly related to the wrong size icon when validating. Apple has gotten more strict on icon sizes, etc.

To submit your application, click the “Submit Application to iTunes Connect..” button. BEWARE: when you do this, it will immediately upload your app and submit it for approval (assuming that your application details are setup).

At this point, your application should be submitted and in the queue for approval.


  1. Thanks Guys! This is greaT!!!

    Wanted to mention do an ‘up’ in the wish list for in-app purchases and Universal Binary( i am guessing this must be a nasty one ).

    Thanks for the GREAT GREAT product.

  2. Thank you so much for this-this way actually makes sense since you can’t upload on the site anymore.

  3. Thanks Jeff!
    Uploaded a new version of one our Apps following the procedure you outlined above. Went flawlessly! Would be nice though for the Xcode Organizer to display a progress box. You don’t know your App is uploaded until Xcode “unfreezes” itself.

  4. I am getting the silent fail, cos my itunes connect is empty? How do i solve that, i tried to create app but still failing..

    • @Petr – at this point, if you’re seeing the app, it’s something on the apple side. We’ve only seen issues when you didn’t have an app setup in iTunes connect or some other error there.

  5. Was having trouble at first when I do this. Mine was setup in iTunes already but was rejected because the UIBackgroundModes key issue. Whenever I try to validate, I just get nothing. So I went back to iTunes Connect and change the status of my app from ‘(red) rejected’ to ‘(green) waiting for upload’. Tried again and validating app works now. Thanks.

  6. Jeff,
    You mentioned backward compatibility, i may need to submit iPad app update with older version of TI SDK as my Twitter Xauth posting is breaking on 1.4.

    If I were to build the app with (early built) 1.3.3 or 1.3.2, with iOS 3.2, can i still submit the app by taking the executable app from zipped package and submit it with App uploader without any issue?


  7. My distribution build is going through the packaging phase and even asks for the codesign in my key chain, but nothing ever appear in the archived applications in the Organizer. Any ideas?

  8. Mike, two things to check…
    First, make sure click on “Archived Applications”. It doesn’t just show up on its own in that list window.

    Second, make certain you have the latest Xcode installed or it may not work all the way through.

  9. Jeff,
    I noticed that the iPhone emulator is loading my apps like greased lightning in 1.4. I mean from a cold start, builds, installs and runs in around 2-3 seconds! That’s smokin’!

    The speed is like 3 fold! Good work on speeding up that process!

  10. I am trying to do an update to an existing App on store. I am using latest TI SDK 1.4. When i hit the button ‘Package’ it invokes the Xcode Organizer but i dont see the Application ID in the drop down. Do I have to create a new application Id even for updating the existing one?.

  11. Tella,
    Yes, even for updates. Go to iTunesConnect and proceed with the typical update procedure until all that’s left is the binary upload option. Logoff, THEN do the Package procedure the Ti.
    That’s how we did it.

  12. Well done this works really well.

    Only issue is with apps with a space in them code//apple doesn’t like that, can’t titanium swap the space for an underline to fix the issue?

    At present I have to change both filenames and edit the list file

  13. Ad Hoc profiles failed to build with 1.3.0 SDK, that’s ridiculous. Appstore profiles are OK. Please fix this ASAP. My clients are waiting for new biuld.

  14. hi,

    nice article.
    I had the same problem as Steve, with the white-spaces.

    I would suggest updating the post to make clear you have to start half the process at the itunes connect site and then continue with the loader.

    thanks for the article and hard work!

Comments are closed.