.ipa (file Extension)
   HOME

TheInfoList



OR:

A .ipa file is an
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
and
iPadOS iPadOS is a mobile operating system developed by Apple for its iPad line of tablet computers. It was given a name distinct from iOS, the operating system used by Apple's iPhones to reflect the diverging features of the two product lines, suc ...
application zip archive file which stores an iOS/iPadOS app in a
bundle Bundle or Bundling may refer to: * Bundling (packaging), the process of using straps to bundle up items Biology * Bundle of His, a collection of heart muscle cells specialized for electrical conduction * Bundle of Kent, an extra conduction path ...
format. Each .ipa file includes a binary and can only be installed on an
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
,
iPadOS iPadOS is a mobile operating system developed by Apple for its iPad line of tablet computers. It was given a name distinct from iOS, the operating system used by Apple's iPhones to reflect the diverging features of the two product lines, suc ...
, or ARM-based
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
device. Files with the .ipa extension can be uncompressed by changing the extension to .zip and unzipping. This is only recommended when editing the app itself. Some .ipa files will not have a .app file. Most .ipa files cannot be installed on the
iPhone Simulator The iOS SDK (iOS Software Development Kit), formerly the iPhone SDK, is a software development kit (SDK) developed by Apple Inc. The kit allows for the development of mobile apps on Apple's iOS and iPadOS operating systems. The iOS SDK is a fre ...
because they do not contain a binary for the
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. Th ...
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 (ISAs) for central processing unit, com ...
of mobile phones and tablets. To run applications on the simulator, original project files which can be opened using the
Xcode Xcode is a suite of developer tools for building apps on Apple devices. It includes an integrated development environment (IDE) of the same name for macOS, used to develop software for macOS, iOS, iPadOS, watchOS, tvOS, and visionOS. It w ...
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, such as access control technologies, can restrict the use of proprietary hardware and copyrighted works. DRM ...
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 media player, media library, and mobile device management (MDM) utility developed by Apple. It is used to purchase, play, download and organize digital multimedia on personal computers running the macOS and Windows operating s ...
and
App Store An app store, also called an app marketplace or app catalog, 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 i ...
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 that 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 t ...
folder is what contains all the app data. The iTunes Artwork file is a 512×512 pixel
PNG Portable Network Graphics (PNG, officially pronounced , colloquially pronounced ) is a raster-graphics file format that supports lossless data compression. PNG was developed as an improved, non-patented replacement for Graphics Interchange ...
image, containing the app's icon for showing in
iTunes iTunes is a media player, media library, and mobile device management (MDM) utility developed by Apple. It is used to purchase, play, download and organize digital multimedia on personal computers running the macOS and Windows operating s ...
and the App Store app on the
iPad The iPad is a brand of tablet computers developed and marketed by Apple Inc., Apple that run the company's mobile operating systems iOS and later iPadOS. The IPad (1st generation), first-generation iPad was introduced on January 27, 2010. ...
. 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 ent ...
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 from the Products folder of the application in Xcode to a folder called
Payload Payload is the object or the entity that 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 t ...
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. AltStore and Sideloadly are tools that can also be used to install unsigned .ipa files to unjailbroken devices by using a developer account to temporarily sign the app for 7 days for testing purposes. Similar to the case of game console hacking, people are known to use this installation for
piracy Piracy is an act of robbery or criminal violence by ship or boat-borne attackers upon another ship or a coastal area, typically with the goal of stealing cargo and valuable goods, or taking hostages. Those who conduct acts of piracy are call ...
, against the tool developer's wishes: some underground communities form around buying an app and then sharing its DRM-free unsigned version.


See also

* apk (file format)


References

{{DEFAULTSORT:Ipa Archive formats Filename extensions