An .ipa file is an
iOS and
iPadOS
iPadOS is a mobile operating system developed by Apple Inc. for its iPad line of tablet computers. It is a rebranded variant of iOS, the operating system used by Apple's iPhones, renamed to reflect the diverging features of the two product ...
application archive file which stores an iOS/iPadOS
app. Each .ipa file includes a binary and can only be installed on an
iOS,
iPadOS
iPadOS is a mobile operating system developed by Apple Inc. for its iPad line of tablet computers. It is a rebranded variant of iOS, the operating system used by Apple's iPhones, renamed to reflect the diverging features of the two product ...
, or ARM-based
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
device. Files with the .ipa extension can be uncompressed by changing the extension to
.zip
ZIP is an archive file format that supports lossless data compression. A ZIP file may contain one or more files or directories that may have been compressed. The ZIP file format permits a number of compression algorithms, though DEFLATE is th ...
and unzipping.
Most .ipa files cannot be installed on the
iPhone Simulator because they do not contain a binary for the
x86 architecture, only one for the
ARM architecture
ARM (stylised in lowercase as arm, formerly an acronym for Advanced RISC Machines and originally Acorn RISC Machine) is a family of reduced instruction set computer (RISC) instruction set architectures for computer processors, configured ...
of mobile phones and tablets. To run applications on the simulator, original project files which can be opened using the
Xcode
Xcode is Apple's integrated development environment (IDE) for macOS, used to develop software for macOS, iOS, iPadOS, watchOS, and tvOS. It was initially released in late 2003; the latest stable release is version 14.2, released on December 13, ...
SDK are required. However, some .ipa files can be opened on the simulator by extracting and copying over the .app file found in the Payload folder. Some simple apps are able to run on the simulator through this method.
ipa is a ''de facto'' format used by Apple and there are no specifications of it. A form of
Digital Rights Management
Digital rights management (DRM) is the management of legal access to digital content. Various tools or technological protection measures (TPM) such as access control technologies can restrict the use of proprietary hardware and copyrighted work ...
exists in the format to control redistribution to a single Apple ID. Prior to iTunes 12.7 (September 2017), users had direct access to ipa files in the form of App Store downloads.
Structure of a .ipa file
An IPA has a built-in structure for
iTunes
iTunes () is a software program that acts as a media player, media library, mobile device management utility, and the client app for the iTunes Store. Developed by Apple Inc., it is used to purchase, play, download, and organize digital mu ...
and
App Store
An App Store (or app marketplace) is a type of digital distribution platform for computer software called applications, often in a mobile context. Apps provide a specific set of functions which, by definition, do not include the running of the c ...
to recognize.
The example below shows the structure of an IPA:
/Payload/
/Payload/Application.app/
/iTunesArtwork
/iTunesArtwork@2x
/iTunesMetadata.plist
/WatchKitSupport/WK
/META-INF
As shown above, the
Payload
Payload is the object or the entity which is being carried by an aircraft or launch vehicle. Sometimes payload also refers to the carrying capacity of an aircraft or launch vehicle, usually measured in terms of weight. Depending on the nature of ...
folder is what contains all the app data. The iTunes Artwork file is a 512×512 pixel
PNG image, containing the app's icon for showing in
iTunes
iTunes () is a software program that acts as a media player, media library, mobile device management utility, and the client app for the iTunes Store. Developed by Apple Inc., it is used to purchase, play, download, and organize digital mu ...
and the App Store app on the
iPad
The iPad is a brand of iOS and iPadOS-based tablet computers that are developed by Apple Inc., Apple Inc. The iPad was conceived before the related iPhone but the iPhone was developed and released first. Speculation about the development, ...
. The iTunesMetadata.plist contains various bits of information, ranging from the developer's name and ID, the bundle identifier, copyright information, genre, the name of the app, release date, purchase date, etc.
It is common but undocumented to use a JPEG file for .
Since 2017, Apple has used
LZFSE
LZFSE (Lempel–Ziv Finite State Entropy) is an open source lossless data compression algorithm created by Apple Inc. It was released with a simpler algorithm called LZVN.
Overview
The name is an acronym for Lempel–Ziv and finite-state entro ...
instead of registered Zip algorithms in IPAs. The "compression method" field in this case is set to 99.
Code signing is handled in the .app bundle directory. The META-INF folder only contains metadata about what program was used to create the IPA.
Unsigned .ipa executables
An unsigned .ipa can be created by copying the folder with the extension
.app .app is an abbreviation of the word ''application''. It may refer to:
Filename extensions
* Used in GEM
* Used for application bundles in NeXTSTEP, OPENSTEP, GNUstep, macOS, iOS, and iPadOS
* Used for app packages in HarmonyOS
* Used in SkyOS ...
from the Products folder of the application in Xcode to a folder called
Payload
Payload is the object or the entity which is being carried by an aircraft or launch vehicle. Sometimes payload also refers to the carrying capacity of an aircraft or launch vehicle, usually measured in terms of weight. Depending on the nature of ...
and compressing the latter using the command
zip -0 -y -r myAppName.ipa Payload/
.
It is then possible to install unsigned .ipa files on
iOS jailbroken devices using third party software. ''AppSync'' is the tool for installing such homebrew apps. Similar to the case of game console hacking, people are known to use this installation for piracy, against the tool developer's wishes:
some underground communities form around buying an app and then sharing its DRM-free unsigned version.
References
{{DEFAULTSORT:Ipa
Archive formats
Filename extensions