| iOS SDK (iOS Software Development Kit) | |
|---|---|
| Developer | Apple Inc. |
| Initial release | March 6, 2008; 17 years ago (2008-03-06) |
| Operating system | macOS |
| Platform | iOS,iPadOS |
| Available in | English |
| Type | Software development kit |
| Website | Apple Developer |
TheiOS SDK (iOS Software Development Kit), formerly theiPhone SDK, is asoftware development kit (SDK) developed byApple Inc. The kit allows for the development ofmobile apps on Apple'siOS 17 and iPadOS operating systems.
The iOS SDK is a free download for users ofMacintosh (or Mac) personal computers. It is not available forMicrosoft Windows PCs. The SDK contains sets giving developers access to various functions and services of iOS devices, such ashardware andsoftware attributes. It also contains an iPhonesimulator to mimic the look and feel of the device on the computer while developing. New versions of the SDK accompany new versions of iOS. In order to test applications, get technical support, and distribute apps throughApp Store, developers are required to subscribe to theApple Developer Program.
Combined withXcode, the iOS SDK helps developers write iOS apps using officially supportedprogramming languages, includingSwift andObjective-C. Other companies have also created tools that allow for the development of native iOS apps using their respective programming languages.
While originally developingiPhone prior to its unveiling in 2007, Apple's then-CEOSteve Jobs did not intend to let third-party developers build native apps for theiOS operating system, instead directing them to makeweb applications for theSafari web browser.[1] However, backlash from developers prompted the company to reconsider,[1] with Jobs announcing on October 17, 2007, that Apple would have asoftware development kit (SDK) available for developers by February 2008.[2][3] The SDK was released on March 6, 2008.[4][5]
The iOS SDK is a free download forMac users.[6] It is not available forMicrosoft Windows.[6] To test the application, get technical support, and distribute applications throughApp Store, developers are required to subscribe to theApple Developer Program.[6]
The SDK contents are separated into the following sets:[7]
The SDK also contains an iPhone simulator, a program used to simulate the look and feel of iPhone on the developer's computer.[7]
New SDK versions accompany new iOS versions.[8][9]
The iOS SDK, combined withXcode, helps developers write iOS applications using officially supported programming languages, includingSwift andObjective-C.[10]
An .ipa (iOS App Store Package) file is an iOS application archive file which stores an iOS app.
In 2008,Sun Microsystems announced plans to release aJava Virtual Machine (JVM) for iOS, based on theJava Platform, Micro Edition version of Java. This would enable Java applications to run on iPhone and iPod Touch.[11] Soon after the announcement, developers familiar with the SDK's terms of agreement believed that by not allowing third-party applications to run in the background (answer a phone call and still run the application, for example),[12] and not allowing an application to download code from another source, nor allowing an application to interact with a third-party application, Sun's development efforts could be hindered without Apple's cooperation.[13] Sun also worked with a third-party company called Innaworks in attempts to get Java on iPhone.[14] Despite the apparent lack of interest from Apple, afirmware leak of the 2007 iPhone release revealed anARM chip with a processor withJazelle support for embedded Java execution.[15]
Novell announced in September 2009 that they had successfully developedMonoTouch, asoftware framework that let developers write native iPhone applications in theC# and.NET programming languages, while still maintaining compatibility with Apple's requirements.[16]
iOS does not supportAdobe Flash,[17] and althoughAdobe has two versions of its software: Flash and Flash Lite, Apple views neither as suitable for the iPhone, claiming that full Flash is "too slow to be useful", and Flash Lite to be "not capable of being used with the Web".[18][19]
In October 2009, Adobe announced that an upcoming update to itsCreative Suite would feature a component to let developers build native iPhone apps using the company's Flash development tools.[20] The software was officially released as part of the company'sCreative Suite 5 collection of professional applications.[21]
In April 2010,Apple made controversial changes to its iPhone Developer Agreement, requiring developers to use only "approved" programming languages in order to publish apps onApp Store, and banning applications that used third-party development tools; the ban affected Adobe's Packager tool, which converted Flash apps into iOS apps.[22][23] After developer backlash[24] and news of a potential anti-trust investigation,[25] Apple again revised its agreement in September, allowing the use of third-party development tools.[24][26]
Originally called "Project Marzipan",[27] Mac Catalyst helps developers bringiPadOS app experiences to macOS, and make it easier to take apps developed for iPadOS devices to Macs by avoiding the need to write the underlying software code twice.