IPA

An IPA file is an "archived" iOS app, a format used to distribute and install such apps for devices such as the iPhone, iPod, and iPad. In contrast to the .app files which are actually subdirectories (folders) containing the files comprising the app, an IPA file (.ipa) is a compressed archive of the app files, in ZIP format.

In the Xcode development environment, a developer has the option to compile the app into a .app file (which includes an Intel-chip executable so the app can be run on the iOS simulator on the Mac) or an .ipa file (which doesn't include that version of the executable, so it is only runnable on real iOS devices).

In order to install an app from an IPA file, the user also needs a Mobile Provision file, set up through the Apple developer website and cryptographically keyed to grant ability to install the app to specified users. In this manner, an app can be distributed by the developer to beta testers, friends, or internal users at a company, but wider public release can only be done through Apple's App Store (except to users of jailbroken devices, which get around such restrictions).

Renaming an IPA file from .ipa to .zip allows any ZIP utility to look inside it. Its structure includes a directory named Payload which contains the app itself (there's a .app file/directory beneath this), and a few more files in the root directory: iTunesArtwork (a 512 x 512 icon in PNG format), and iTunesMetadata.plist (a Property List with various information about the app).

Links

 * Wikipedia article
 * Stack Overflow discussions on creating .ipa files: here and here
 * Video: Installing IPA files without iTunes