iOS SDK
Lua error in package.lua at line 80: module 'strict' not found.
<templatestyles src="Template:Hidden begin/styles.css"/> | |
Original author(s) | Apple Inc. |
---|---|
Developer(s) | Apple Inc. |
Initial release | March 6, 2008 |
Stable release | 9.3 (March 21, 2016[±] | )
Preview release | 9.3 Beta 6 (March 7, 2016[±] | )
Development status | Active |
Available in | English |
Type | Software development kit |
Website | Apple Developer |
The iOS SDK (Software Development Kit) (formerly iPhone SDK) is a software development kit developed by Apple Inc. and released in February 2008 to develop native applications for iOS.
<templatestyles src="Template:TOC limit/styles.css" />
Contents
- 1 History
- 1.1 SDK release history
- 1.1.1 iPhone OS 1.x: SDK
- 1.1.2 iPhone OS 2.x: SDK
- 1.1.2.1 iPhone OS 2.0 Beta 2
- 1.1.2.2 iPhone OS 2.0 Beta 3
- 1.1.2.3 iPhone OS 2.0 Beta 4
- 1.1.2.4 iPhone OS 2.0 Beta 5
- 1.1.2.5 iPhone OS 2.0 Beta 6
- 1.1.2.6 iPhone OS 2.0 Beta 7
- 1.1.2.7 iPhone OS 2.0 Beta 8
- 1.1.2.8 iPhone OS 2.0 Final
- 1.1.2.9 iPhone OS 2.1 Beta
- 1.1.2.10 iPhone OS 2.1 Beta 2
- 1.1.2.11 iPhone OS 2.1 Beta 3
- 1.1.2.12 iPhone OS 2.1 Beta 4
- 1.1.2.13 iPhone OS 2.1 Final
- 1.1.2.14 iPhone OS 2.2 Beta
- 1.1.2.15 iPhone OS 2.2 Beta 2
- 1.1.2.16 iPhone OS 2.2 Final
- 1.1.3 iPhone OS 3.x: SDK
- 1.1.3.1 iPhone OS 3.0 Beta 1
- 1.1.3.2 iPhone OS 3.0 Beta 2
- 1.1.3.3 iPhone OS 3.0 Beta 3
- 1.1.3.4 iPhone OS 3.0 Beta 4
- 1.1.3.5 iPhone OS 3.0 Beta 5
- 1.1.3.6 iPhone OS 3.0 Golden Master
- 1.1.3.7 iPhone OS 3.0 Final
- 1.1.3.8 iPhone OS 3.1 Beta 1
- 1.1.3.9 iPhone OS 3.1 Beta 2
- 1.1.3.10 iPhone OS 3.1 Beta 3
- 1.1.3.11 iPhone OS 3.1 Final
- 1.1.3.12 iOS 3.2 Beta 1
- 1.1.3.13 iOS 3.2 Beta 2
- 1.1.3.14 iOS 3.2 Beta 3
- 1.1.3.15 iOS 3.2 Beta 4
- 1.1.3.16 iOS 3.2 Beta 5
- 1.1.3.17 iOS 3.2 Golden Master
- 1.1.3.18 iOS 3.2 Final
- 1.1.4 iOS 4.x: SDK
- 1.1.4.1 iOS 4.0 Beta 1
- 1.1.4.2 iOS 4.0 Beta 2
- 1.1.4.3 iOS 4.0 Beta 3
- 1.1.4.4 iOS 4.0 Beta 4
- 1.1.4.5 iOS 4.0 Golden Master
- 1.1.4.6 iOS 4.0 Final
- 1.1.4.7 iOS 4.1 Beta 1
- 1.1.4.8 iOS 4.1 Beta 2
- 1.1.4.9 iOS 4.1 Beta 3
- 1.1.4.10 iOS 4.1 Final
- 1.1.4.11 iOS 4.2 Beta 1
- 1.1.4.12 iOS 4.2 Beta 2
- 1.1.4.13 iOS 4.2 Beta 3
- 1.1.4.14 iOS 4.2 Golden Master
- 1.1.4.15 iOS 4.2 Golden Master 2
- 1.1.4.16 iOS 4.2 Final
- 1.1.4.17 iOS 4.3 Beta 1
- 1.1.4.18 iOS 4.3 Beta 2
- 1.1.4.19 iOS 4.3 Beta 3
- 1.1.4.20 iOS 4.3 Golden Master
- 1.1.4.21 iOS 4.3 Final
- 1.1.5 iOS 5.x: SDK
- 1.1.5.1 iOS 5.0 beta 1
- 1.1.5.2 iOS 5.0 beta 2
- 1.1.5.3 iOS 5.0 beta 3
- 1.1.5.4 iOS 5.0 beta 4
- 1.1.5.5 iOS 5.0 beta 5
- 1.1.5.6 iOS 5.0 beta 6
- 1.1.5.7 iOS 5.0 beta 7
- 1.1.5.8 iOS 5.0 Golden Master
- 1.1.5.9 iOS 5.0 Final
- 1.1.5.10 iOS 5.0.1 beta 1
- 1.1.5.11 iOS 5.0.1 Final
- 1.1.5.12 iOS 5.1 beta 1
- 1.1.5.13 iOS 5.1 beta 2
- 1.1.5.14 iOS 5.1 beta 3
- 1.1.5.15 iOS 5.1 Final
- 1.1.6 iOS 6.x: SDK
- 1.1.7 iOS 7.x: SDK
- 1.1.7.1 iOS 7.0 beta 1
- 1.1.7.2 iOS 7.0 beta 2
- 1.1.7.3 iOS 7.0 beta 3
- 1.1.7.4 iOS 7.0 beta 4
- 1.1.7.5 iOS 7.0 beta 5
- 1.1.7.6 iOS 7.0 beta 6
- 1.1.7.7 iOS 7.0 Golden Master
- 1.1.7.8 iOS 7.0 Final
- 1.1.7.9 iOS 7.1 beta 1
- 1.1.7.10 iOS 7.1 beta 2
- 1.1.7.11 iOS 7.1 beta 3
- 1.1.7.12 iOS 7.1 beta 4
- 1.1.7.13 iOS 7.1 beta 5
- 1.1.7.14 iOS 7.1 Final
- 1.1.8 iOS 8.x: SDK
- 1.1.8.1 iOS 8.0 beta 1
- 1.1.8.2 iOS 8.0 beta 2
- 1.1.8.3 iOS 8.0 beta 3
- 1.1.8.4 iOS 8.0 beta 4
- 1.1.8.5 iOS 8.0 beta 5
- 1.1.8.6 iOS 8.0 Golden Master
- 1.1.8.7 iOS 8.0 Final
- 1.1.8.8 iOS 8.1 beta 1
- 1.1.8.9 iOS 8.1 beta 2
- 1.1.8.10 iOS 8.1 Final
- 1.1.8.11 iOS 8.1.1 beta 1
- 1.1.8.12 iOS 8.1.1 Final
- 1.1.8.13 iOS 8.2 beta 1
- 1.1.8.14 iOS 8.2 beta 2
- 1.1.8.15 iOS 8.2 beta 3
- 1.1.8.16 iOS 8.2 beta 4
- 1.1.8.17 iOS 8.2 beta 5
- 1.1.8.18 iOS 8.2 Final
- 1.1.8.19 iOS 8.3 beta 1
- 1.1.8.20 iOS 8.3 beta 2
- 1.1.8.21 iOS 8.3 beta 3
- 1.1.8.22 iOS 8.3 beta 4
- 1.1.8.23 iOS 8.3 Final
- 1.1.8.24 iOS 8.4 beta 1
- 1.1.8.25 iOS 8.4 beta 2
- 1.1.8.26 iOS 8.4 beta 3
- 1.1.8.27 iOS 8.4 beta 4
- 1.1.8.28 iOS 8.4 Final
- 1.1.8.29 iOS 8.4.1 beta 1
- 1.1.8.30 iOS 8.4.1 beta 2
- 1.1.9 iOS 9.x: SDK
- 1.1.9.1 iOS 9.0 beta 1
- 1.1.9.2 iOS 9.0 beta 2
- 1.1.9.3 iOS 9.0 beta 3
- 1.1.9.4 iOS 9.0 beta 4
- 1.1.9.5 iOS 9.0 beta 5
- 1.1.9.6 iOS 9.0 Final
- 1.1.9.7 iOS 9.0.1
- 1.1.9.8 iOS 9.0.2
- 1.1.9.9 iOS 9.1 beta 1
- 1.1.9.10 iOS 9.1 beta 2
- 1.1.9.11 iOS 9.1 beta 3
- 1.1.9.12 iOS 9.1 beta 4
- 1.1.9.13 iOS 9.1 beta 5
- 1.1.9.14 iOS 9.1 Final
- 1.1.9.15 iOS 9.2 beta 1
- 1.1.9.16 iOS 9.2 beta 2
- 1.1.9.17 iOS 9.2 beta 3
- 1.1.9.18 iOS 9.2 beta 4
- 1.1.9.19 iOS 9.2 Final
- 1.1.9.20 iOS 9.2.1 beta 1
- 1.1.9.21 iOS 9.2.1 beta 2
- 1.1.9.22 iOS 9.3 beta 1
- 1.1 SDK release history
- 2 Features
- 3 Alternatives
- 4 Licensing
- 5 See also
- 6 Notes
- 7 External links
- 8 References
History
On October 17, 2007, in an open letter posted to Apple's "Hot News" weblog, Steve Jobs announced that a software development kit (SDK) would be made available to third-party developers in February 2008.[1] The SDK was released on March 6, 2008, and allows developers to make applications for the iPhone and iPod Touch, as well as test them in an "iPhone simulator". However, loading an application onto the devices is only possible after paying an iOS Developer Program fee, which is $99.00 USD per year.[2] Since the release of Xcode 3.1, Xcode is the development environment for the iOS SDK. iPhone applications, like OS X applications, are written in Swift and Objective-C,[3] with some elements of an application able to be written in C or C++.
SDK release history
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
Apple normally releases a new SDK concurrently with every major (iOS x.0 – e.g. iOS 6.0) and minor (iOS x.x, e.g. iOS 5.1) iOS update. Several beta SDKs are usually released to developers before the version is released publicly. The betas are intended to be used for testing for compatibility with existing applications and to add features that are newly available in that version of iOS.[4]
Obsolete | Discontinued | Current release | Old Release | Beta | Old beta | Future Release |
iPhone OS 1.x: SDK
Table of versions: iPhone OS 1.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iPhone OS 1.2 Beta 1 |
5A147p | March 6, 2008 | Release for iPhone OS version 1.0 Announced at an Apple press conference.[5] | ||
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iPhone OS 2.x: SDK
Table of versions: iPhone OS 2.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iPhone OS 2.0 Beta 2 |
5A225c | March 27, 2008 | Release for iPhone OS version 2.0b2,[6] which added Interface Builder, an application for building graphical user interfaces for iPhone applications.[7] | ||
iPhone OS 2.0 Beta 3 |
5A240d | April 8, 2008 | Release for iPhone OS version 2.0b3.[8] | ||
iPhone OS 2.0 Beta 4 |
5A258f | April 23, 2008 | Release for iPhone OS version 2.0b4. This version of the SDK supports OpenGL 3D graphics, primarily used to make games,[9] and indications that some applications will be allowed to run in the background (as the iPod, Phone, and Mail applications do), something that Apple had previously stated was not possible. | ||
iPhone OS 2.0 Beta 5 |
5A274d | May 6, 2008 | Release for iPhone OS version 2.0b5.[10] | ||
iPhone OS 2.0 Beta 6 |
5A292g | May 28, 2008 | Release for iPhone OS version 2.0b6. The code in this update gave hints about updates to Apple's .Mac[11] service and also gave a first reference to the upcoming version of Mac OS X, version 10.6 Snow Leopard.[12]
This beta had two separate builds. The first on (5A292g) was an enterprise pre-release, while the second one (5A308) was the general developer release.[13] |
||
5A308 | May 29, 2008 | ||||
iPhone OS 2.0 Beta 7 |
5A331 | June 9, 2008 | Release for iPhone OS version 2.0b7, which unlocked Apple's .Mac replacement, MobileMe. This release was for WWDC, Apple's developer's conference, which is noted as part of the name of the iPhone OS beta download. | ||
iPhone OS 2.0 Beta 8 |
5A345 | June 26, 2008 | Release for iPhone OS version 2.0b8.[14] | ||
iPhone OS 2.0 Final |
5A347 | July 11, 2008 | Release for iPhone OS version 2.0. This coincided with the launch of the App Store. | ||
iPhone OS 2.1 Beta |
5F90 [1] | July 24, 2008 | Release for iPhone OS version 2.1.[15] Apple notes that applications built using the 2.1 SDK will not run on the iPhone 2.0 software, and will not yet be accepted into the App Store. | ||
iPhone OS 2.1 Beta 2 |
5F97 | July 30, 2008 | Release for iPhone OS version 2.1.[16] | ||
iPhone OS 2.1 Beta 3 |
5F108 | August 8, 2008 | Release for iPhone OS version 2.1.[17] | ||
iPhone OS 2.1 Beta 4 |
5F116 [2] | August 16, 2008 | |||
iPhone OS 2.1 Final |
5F136 | September 12, 2008 | Release for iPhone OS 2.1. | ||
iPhone OS 2.2 Beta |
5G29 | September 25, 2008 | Release for iPhone OS version 2.2.[18] | ||
iPhone OS 2.2 Beta 2 |
5G53 [3] | October 24, 2008 | |||
iPhone OS 2.2 Final |
5G77 | November 20, 2008 | Release for iPhone OS version 2.2. | ||
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iPhone OS 3.x: SDK
Table of versions: iPhone OS 3.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iPhone OS 3.0 Beta 1 |
7A238j | March 17, 2009 | Preview of iPhone OS version 3.0 and SDK 3.0 beta release.[19] | ||
iPhone OS 3.0 Beta 2 |
7A259g | March 31, 2009 | Release for iPhone OS version 3.0.[20] | ||
iPhone OS 3.0 Beta 3 |
7A280f | April 14, 2009 | Release for iPhone OS version 3.0.[21] | ||
iPhone OS 3.0 Beta 4 |
7A300g | April 28, 2009 | Release for iPhone OS version 3.0.[22] | ||
iPhone OS 3.0 Beta 5 |
7A312g | May 6, 2009 | Release for iPhone OS version 3.0.[23] | ||
iPhone OS 3.0 Golden Master |
5A331 | June 8, 2009 | Final Release for iPhone OS version 3.0 for developers and private testers only.[24] | ||
iPhone OS 3.0 Final |
5A345 | June 17, 2009 | Final release for iPhone OS version 3.0 for standard users was released on June 17.[24] | ||
iPhone OS 3.1 Beta 1 |
7C97d | June 30, 2009 | First beta release for iPhone OS version 3.1 released to developers June 30. | ||
iPhone OS 3.1 Beta 2 |
7C106c | July 14, 2009 | Second beta release for iPhone OS version 3.1 released to developers July 14. | ||
iPhone OS 3.1 Beta 3 |
7C116a | July 27, 2009 | Third beta release for iPhone OS version 3.1 released to developers July 27. | ||
iPhone OS 3.1 Final |
7C144 | September 9, 2009 | Final release for iPhone OS version 3.1 for standard users was released in the Apple "It's Only Rock and Roll, but we like it" special event on September 9, 2009. | ||
iOS 3.2 Beta 1 |
7B314 [4] | January 27, 2010 | Initial, developer-only beta release for iOS version 3.2. iPad only. | ||
iOS 3.2 Beta 2 |
7B320c | February 9, 2010 | iPad only. | ||
iOS 3.2 Beta 3 |
7B334b | February 23, 2010 | iPad only. | ||
iOS 3.2 Beta 4 |
7B348b | March 9, 2010 | iPad only. | ||
iOS 3.2 Beta 5 |
7B360 | March 17, 2010 | iPad only. | ||
iOS 3.2 Golden Master |
7B367 | March 29, 2010 | iPad only. | ||
iOS 3.2 Final |
7B367 | April 3, 2010 | First public release of iOS version 3.2. iPad only. | ||
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 4.x: SDK
Table of versions: iOS 4.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 4.0 Beta 1 |
8A230m | April 8, 2010 | First beta release for iOS version 4.0 released to developers April 8. | ||
iOS 4.0 Beta 2 |
8A248c | April 20, 2010 | Second beta release for iOS version 4.0 released to developers April 20. | ||
iOS 4.0 Beta 3 |
8A260b | May 4, 2010 | Third beta release for iOS version 4.0 released to developers May 4. | ||
iOS 4.0 Beta 4 |
8A260b | May 18, 2010 | Fourth beta release for iOS version 4.0 released to developers May 18. | ||
iOS 4.0 Golden Master |
8A293 | June 7, 2010 | Golden Master release for iOS version 4.0 released to developers June 7. | ||
iOS 4.0 Final |
8A331 | June 8, 2010 | Final Release for iPhone OS version 4.0 for developers and private testers only.[24] | ||
iOS 4.1 Beta 1 |
8B5080c | July 14, 2010 | First beta release for iOS version 4.1 released to developers July 14. | ||
iOS 4.1 Beta 2 |
8B5091b | July 27, 2010 | Second beta release for iOS version 4.1. | ||
iOS 4.1 Beta 3 |
8B5097d | August 3, 2010 | Third beta release for iOS version 4.1. | ||
iOS 4.1 Final |
8B117 | September 8, 2010 | Final release for iOS version 4.1 released to developers September 8. | ||
iOS 4.2 Beta 1 |
8C5091e | September 15, 2010 | First beta release for iOS version 4.2. | ||
iOS 4.2 Beta 2 |
8C5101c | September 28, 2010 | Second beta release for iOS version 4.2. | ||
iOS 4.2 Beta 3 |
8C5115c | October 12, 2010 | Third beta release for iOS version 4.2. | ||
iOS 4.2 Golden Master |
8C134 | November 1, 2010 | Golden Master seed release for iOS version 4.2. | ||
iOS 4.2 Golden Master 2 |
8C148 | November 18, 2010 | Second Golden Master seed release for iOS version 4.2, numbered as 4.2.1. | ||
iOS 4.2 Final |
8C134 | November 22, 2010 | Final release for iOS version 4.2 released to developers November 22. | ||
iOS 4.3 Beta 1 |
8F5148b | January 12, 2011 | Drops support for iPhone 3G, and second-generation iPod touch. | ||
iOS 4.3 Beta 2 |
8F5153d | January 19, 2011 | |||
iOS 4.3 Beta 3 |
8F5166b | February 1, 2011 | |||
iOS 4.3 Golden Master |
8F190 | March 3, 2011 | Also includes Xcode 4 golden master to support iOS 4.3. | Xcode 4 golden master | |
iOS 4.3 Final |
8F190 | March 9, 2011 | Also includes Xcode 4 final. | Xcode 4 final | |
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 5.x: SDK
Table of versions: iOS 5.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 5.0 beta 1 |
9a5220p | June 6, 2011 | iTunes 10.5 beta 1 | ||
iOS 5.0 beta 2 |
9A524Bd | June 24, 2011 | iTunes 10.5 beta 2 | ||
iOS 5.0 beta 3 |
9A5259f | July 11, 2011 | iTunes 10.5 beta 3 | ||
iOS 5.0 beta 4 |
9A5274d | July 22, 2011 | iTunes 10.5 beta 4 | Xcode 4.2 Preview 4 | |
iOS 5.0 beta 5 |
9A5288d | August 6, 2011 | iTunes 10.5 beta 5 | Xcode 4.2 Preview 5 | |
iOS 5.0 beta 6 |
9A5302b | August 19, 2011 | iTunes 10.5 beta 6 | Xcode 4.2 Preview 6 | |
iOS 5.0 beta 7 |
9A5313e | August 31, 2011 | iTunes 10.5 beta 7 | Xcode 4.2 Preview 7 | |
iOS 5.0 Golden Master |
9A334 | October 4, 2011 | iTunes 10.5 beta 9 | Xcode 4.2 Golden Master | |
iOS 5.0 Final |
9A334 | October 12, 2011 | iTunes 10.5 | Xcode 4.2 | |
iOS 5.0.1 beta 1 |
9A402 | November 4, 2011 | iTunes 10.5.1 beta 1 | Xcode 4.2 | |
iOS 5.0.1 Final |
9A405 | November 11, 2011 | iTunes 10.5.1 Final | Xcode 4.2 | |
iOS 5.1 beta 1 |
9B5117b | November 28, 2011 | Xcode 4.3 Beta preview | ||
iOS 5.1 beta 2 |
9B5127c | December 12, 2011 | Xcode 4.3 Beta preview 2 | ||
iOS 5.1 beta 3 |
9B5141a | January 9, 2012 | Xcode 4.3 Beta preview | ||
iOS 5.1 Final |
9B176, 9B179 P5 (iPhone 4S only) | March 7, 2012 | iTunes 10.6 | Xcode 4.3 | |
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 6.x: SDK
Table of versions: iOS 6.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 6.0 beta 1 |
10A5316k | June 11, 2012 | iTunes 10.6.3 | Xcode 4.5 Beta preview | |
iOS 6.0 beta 2 |
10A5338d | June 25, 2012 | Xcode 4.5 Beta 2 preview | ||
iOS 6.0 beta 3 |
10A5355d | July 16, 2012 | Xcode 4.5 Beta 3 preview | ||
iOS 6.0 beta 4 |
10A5376e | August 6, 2012 | Xcode 4.5 Developer Preview 4 | ||
iOS 6.0 Golden Master |
10A403 | September 12, 2012 | iTunes 10.7 | Xcode 4.5 Golden Master | |
iOS 6.0 Final |
10A403, 10A405 (iPhone 5),10A406 (iPod Touch 5th Gen.) | September 19, 2012 | iTunes 10.7 | Xcode 4.5 | |
iOS 6.1 beta 1 |
10B5095f | November 1, 2012 | iTunes 10.7 | Xcode 4.6 | |
iOS 6.1 beta 2 |
10B5105c | November 12, 2012 | iTunes 10.7 | Xcode 4.6 | |
iOS 6.1 beta 3 |
10B5117b | December 3, 2012 | iTunes 10.7 | Xcode 4.6 | |
iOS 6.1 beta 4 |
10B5126b | December 17, 2012 | iTunes 10.7 | Xcode 4.6 | |
iOS 6.1 Final |
10B141 P3 S2 S2C S2D S3 S3L S3D S4 S4L S4D M1 M1C T5 10B142 P4S 10B143 P5 T4 10B144 P4 P4C |
January 28, 2013 | iTunes 11 | Xcode 4.6 | |
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 7.x: SDK
Table of versions: iOS 7.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 7.0 beta 1 |
11A4372q | June 10, 2013 | Release of iOS 7 beta | iTunes 11 | Xcode 5 |
iOS 7.0 beta 2 |
11A4400f | June 24, 2013 | iPad support added | iTunes 11 | Xcode 5 |
iOS 7.0 beta 3 |
11A4414e | July 8, 2013 | Bug fixes and crashes | iTunes 11 | Xcode 5 |
iOS 7.0 beta 4 |
11A4435d | July 29, 2013 | Bug fixes and crashes | iTunes 11 | Xcode 5 |
iOS 7.0 beta 5 |
11A4449a | August 6, 2013 | Minor Bug fixes and changes to appearance | iTunes 11.1 beta 1 | Xcode 5 |
iOS 7.0 beta 6 |
11A4449d | August 15, 2013 | Minor Bug fixes | iTunes 11.1 beta 1 | Xcode 5 |
iOS 7.0 Golden Master |
11A465 | September 10, 2013 | Many Bug fixes | iTunes 11.1 beta 2 | Xcode 5 |
iOS 7.0 Final |
11A465 | September 18, 2013 | iTunes 11.1 | Xcode 5 | |
iOS 7.1 beta 1 |
11D5099e | November 18, 2013 | |||
iOS 7.1 beta 2 |
11D5115d | December 13,
Q2013 |
|||
iOS 7.1 beta 3 |
11D5127c | January 7, 2014 | |||
iOS 7.1 beta 4 |
11D5134c | January 20, 2014 | iTunes 11.1.4 | Xcode 5.1 | |
iOS 7.1 beta 5 |
11D5145e | Fem 4, 2014 | iTunes 11.1.4 | Xcode 5.1 | |
iOS 7.1 Final |
11D167 | Mar 10, 2014 | Xcode 5.1 | ||
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 8.x: SDK
Table of versions: iOS 8.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 8.0 beta 1 |
12A4265u | June 2, 2014 | Release of iOS 8 beta | iTunes 11.2.2 | Xcode 6 |
iOS 8.0 beta 2 |
12A4297e | June 17, 2014 | Xcode 6 | ||
iOS 8.0 beta 3 |
12A4318c | July 7, 2014 | Xcode 6 | ||
iOS 8.0 beta 4 |
12A4331d | July 21, 2014 | Xcode 6 | ||
iOS 8.0 beta 5 |
12A4345d | August 4, 2014 | Xcode 6 | ||
iOS 8.0 Golden Master |
12A365 | September 9, 2014 | iTunes 11.4.0 | Xcode 6 | |
iOS 8.0 Final |
12A365 | September 17, 2014 | iTunes 11.4.018 | Xcode 6.0.1 | |
iOS 8.1 beta 1 |
12B401 | September 29, 2014 | Release of iOS 8.1 beta | Xcode 6.1 | |
iOS 8.1 beta 2 |
12B407 | October 7, 2014 | Xcode 6.1 GM seed 2 | ||
iOS 8.1 Final |
12B410 (iPad) 12B411 (iPhone) |
October 20, 2014 | iTunes 12.0.1 | Xcode 6.1 build 6A1052d | |
iOS 8.1.1 beta 1 |
12B432 | November 3, 2014 | Release of iOS 8.1.1 beta | ||
iOS 8.1.1 Final |
12B435 | November 17, 2014 | |||
iOS 8.2 beta 1 |
12B436 | November 18, 2014 | Release of iOS 8.2 beta | Xcode 6.2 with WatchKit | |
iOS 8.2 beta 2 |
12D445d | December 10, 2014 | Xcode 6.2 | ||
iOS 8.2 beta 3 |
12D5452a | December 18, 2014 | Xcode 6.2 | ||
iOS 8.2 beta 4 |
12D5461b | January 12, 2015 | Xcode 6.2 | ||
iOS 8.2 beta 5 |
12D5480a | February 2, 2015 | Xcode 6.2 | ||
iOS 8.2 Final |
12D508 | March 9, 2015 | Apple Watch support and initial WatchKit SDK | iTunes 12.1.1 | Xcode 6.2 |
iOS 8.3 beta 1 |
12F5027d | February 9, 2015 | Release of iOS 8.3 beta, concurrent with iOS 8.2 beta 5 | Xcode 6.3 | |
iOS 8.3 beta 2 |
12F5037c | February 23, 2015 | Xcode 6.3 | ||
iOS 8.3 beta 3 |
12F5047f | March 12, 2015 | Xcode 6.3 | ||
iOS 8.3 beta 4 |
12F61 | March 24, 2015 | Xcode 6.3 | ||
iOS 8.3 Final |
12F69 - 12F70 | October 8, 2014 | Apple Watch Support | iTunes 12.1.2.27 | Xcode 6.3 build 6D570 |
iOS 8.4 beta 1 |
12H4074d | October 13, 2014 | Redesigned Music App | Xcode 6.3 build 6D570 | |
iOS 8.4 beta 2 |
12H4086d | October 27, 2014 | Xcode 6.4 beta 2 | ||
iOS 8.4 beta 3 |
12H4098c | May 11, 2015 | Xcode 6.4 beta 3 | ||
iOS 8.4 beta 4 |
12H4125a | June 9, 2015 | Xcode 6.4 beta 4 | ||
iOS 8.4 Final |
12H143 | June 30, 2015 | Apple Music | Xcode 6.4 | |
iOS 8.4.1 beta 1 |
12H304 | October 14, 2014 | Xcode 6.4 build 6E35b | ||
iOS 8.4.1 beta 2 |
12H318 | October 31, 2014 | Xcode 6.4 build 6E35b | ||
Xcode 6.4 | |||||
Version | style=" |
iOS 9.x: SDK
Table of versions: iOS 9.x SDK | |||||
---|---|---|---|---|---|
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
iOS 9.0 beta 1 |
13A4254v | June 8, 2015 | Xcode 7.0 beta 1 | ||
iOS 9.0 beta 2 |
13A4280e | June 23, 2015 | Xcode 7.0 beta 2 | ||
iOS 9.0 beta 3 |
13A4293g | October 8, 2014 | Xcode 7.0 beta 3 build 7A152u | ||
iOS 9.0 beta 4 |
13A4305g | October 21, 2014 | Xcode 7.0 beta 4 build 7A165t | ||
iOS 9.0 beta 5 |
13A4325c | November 6, 2014 | Xcode 7.0 beta 5 build 7A176x | ||
iOS 9.0 Final |
13A340 | September 16, 2015 | iTunes 12.2.2.25 | Xcode 7.0.1 build 7A1001 | |
iOS 9.0.1 |
13A404 | September 23, 2015 | |||
iOS 9.0.2 |
13A452 | September 30, 2015 | |||
iOS 9.1 beta 1 |
13B5110e | September 9, 2015 | iTunes 12.2.2.25 | Xcode 7.1 beta 1 build 7B60 | |
iOS 9.1 beta 2 |
13B5119e | September 23, 2015 | Xcode 7.1 beta 2 | ||
iOS 9.1 beta 3 |
13B5130b | September 30, 2015 | Xcode 7.1 beta 2 build 7B75 | ||
iOS 9.1 beta 4 |
13B136 | October 6, 2015 | Xcode 7.1 beta 3 build 7B85 | ||
iOS 9.1 beta 5 |
13B137 - 13B139 | October 12, 2015 | |||
iOS 9.1 Final |
13B143 | October 22, 2015 | watchOS 2.0.1 | iTunes 12.3.1 | Xcode 7.1 build 7B91b |
iOS 9.2 beta 1 |
13C5055d | October 27, 2015 | Xcode 7.2 beta 1 build 7C46I | ||
iOS 9.2 beta 2 |
13C5060d | November 3, 2015 | Xcode 7.2 beta 2 build 7C46t | ||
iOS 9.2 beta 3 |
13C71 | November 11, 2015 | Xcode 7.2 beta 3 build 7C62 | ||
iOS 9.2 beta 4 |
13C5075 | November 18, 2015 | Xcode 7.2 beta 4 build 7C62b | ||
iOS 9.2 Final |
13C75 | December 8, 2015 | watchOS 2.1 build 13S661 | iTunes 12.3.2 | Xcode 7.2 build 7C68 |
iOS 9.2.1 beta 1 |
13D11 | December 16, 2015 | |||
iOS 9.2.1 beta 2 |
13D14 | January 4, 2016 | |||
iOS 9.3 beta 1 |
13E5181d | January 11, 2016 | watchOS 2.2 build 13V5098e | Xcode 7.3 build 7D111g | |
Version | Build | Release date | Features/Notes | iTunes version | Xcode version |
Features
Developers are able to set any price above a set minimum for their applications to be distributed through the App Store, of which they will receive a 70% share. Alternately, they may opt to release the application for free and need not pay any costs to release or distribute the application except for the membership fee.[25]
Since its release, there has been some controversy regarding the refund policy in the fine print of the Developer Agreement with Apple. According to the agreement that developers must agree to, if someone purchases an app from the app store, 30% of the price goes to Apple, and 70% to the developer. If a refund is granted to the customer (at Apple's discretion), the 30% is returned to the customer from Apple, and 70% from the developer; however, Apple can then take another 30% of the cost from the developer to make up for Apple's loss.[26]
SDK contents
As iOS uses a variant of the same XNU kernel that is found in OS X, the tool chain used for developing on iOS is also based on Xcode.
The SDK contents is broken down into the following sets:[27]
- Cocoa Touch
- Multi-touch events and controls
- Accelerometer support
- View hierarchy
- Localization (i18n)
- Camera support
- Media
- OpenAL
- audio mixing and recording
- Video playback
- Image file formats
- Quartz
- Core Animation
- OpenGL ES
- Core Services
- Networking
- Embedded SQLite database
- Core Location
- Threads
- CoreMotion
- Mac OS X Kernel
Along with the Xcode toolchain, the SDK contains the iPhone Simulator, a program used to simulate the look and feel of the iPhone on the developer's desktop. Originally called the Aspen Simulator, it was renamed with the Beta 2 release of the SDK. Note that the iPhone Simulator is not an emulator and runs code generated for an x86 target rather than ARM.
The latest SDK, iOS 6.0 SDK in Xcode 4.5, requires an Intel Mac running Mac OS X 10.7.4 "Lion" or later. Other operating systems, including Microsoft Windows and older versions of Mac OS X, are not supported.[28]
Core Location
Core Location is a software framework in iOS. It is primarily used by applications on iOS (formerly iPhone OS) 2.0 or later for detection of the device's location, and on supported devices running iPhone OS 3.0 or later, the device's heading. On the iPod Touch and iPad (Wifi-only models), Core Location uses Skyhook Wireless's Wi-Fi-based positioning system. On the original iPhone, it uses cellular tower triangulation in addition to Wi-Fi positioning. On the iPhone 3G or newer and iPad (Wifi + Cellular models), it also uses the available GPS hardware, and the iPhone 4S uses all the aforementioned technologies with the addition of GLONASS. The actual selection of location method is abstracted from the user and developer.
Core Location also allows applications to retrieve the device's heading from the built-in magnetometer (digital compass). It not only can detect the magnetic heading and true heading (combined with the GPS), but also can get raw heading data.[29] Heading information is only available in iPhone OS 3.0 or later running on the iPhone 3GS or newer and all iPad models.
The framework was announced as part of the iPhone Software Roadmap event on March 6, 2008,[30] and was made available as part of the iOS SDK.
SVG
Lua error in package.lua at line 80: module 'strict' not found. Mobile Safari supports SVG starting with iPhone OS 2.1. The SVG support features scripting and most of the static parts of the SVG 1.1. specification. SMIL animation is not yet supported for SVG graphics. It will be delivered after the Webkit SMIL implementation is mature enough. In addition to SVG, the HTML Canvas is supported.
Alternatives
Restrictions imposed by iOS Developer Program License
Terms in the iOS Developer Program License were relaxed by Apple in September 2010 with regard to using other interpreter languages. [31][32]
Java
Java running on an iOS platform currently is outside the bounds of the iOS SDK Agreement. The guideline in question is rule 3.3.2, which reads and which was changed after Sept 2010:
<templatestyles src="Template:Blockquote/styles.css" />
3.3.2 — An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s).
In 2008, Sun Microsystems announced plans to release a Java Virtual Machine (JVM) for iOS, based on the Java Platform, Micro Edition version of Java. This would enable Java applications to run on iPhone and iPod Touch.[33] Soon after the announcement, developers familiar with the SDK's terms of agreement believed that by not allowing 3rd-party applications to run in the background (answer a phone call and still run the application, for example),[34] allowing an application to download code from another source, or allowing an application to interact with a 3rd-party application (Safari with JVM, for example), could hinder development of the JVM without Apple's cooperation.[35]
It is possible to install and use a J2ME stack on an iPhone, though it involves jailbreaking.[36][37]
In 2008, there were talks between Sun and Apple concerning the availability of Java on the iPhone, and that Sun was working in that intent with a company called Innaworks.[38][39] Since it is required that all ARM9 or later processors include Jazelle support, the iPhone includes the hardware for accelerated Java execution.[40]
.NET/CLI
It is not permissible to install a .NET Framework or similar runtime on an iPhone, but by using Xamarin's commercial MonoTouch framework it is possible to achieve similar results. MonoTouch uses a custom fork of the Mono Project to compile all CLI bytecode in .NET to native ARM machine-code ahead of time.[41]
Since this framework is fully compatible with CLI compliant languages that do not emit runtime compiled code it is possible to develop with the wide range of languages supported by .NET, including C# and Visual Basic .NET. Though at this time the MonoTouch native ARM code compiler only supports C# with plans for Visual Basic .NET in the future.[42]
Flash
iOS does not support Adobe Flash, and Flash movies on web pages cannot be viewed in Mobile Safari[note 1]. Although Adobe has two versions of its software – Flash and Flash Lite – Apple views neither as suitable for the iPhone, claiming that full Flash would be too cumbersome for the iPhone, while Flash Lite would not provide a worthy experience for the users.[44]
Flash for Apple is a virtual machine with a just-in-time compiler. Apple's iOS SDK prevents any software on the iPhone from downloading or running external executable code (e.g. a virtual machine). Additionally, apps built under the iPhone Developer Program License Agreement for the iPhone SDK 4 Beta may not be originally written in any other programming language than C, C++, or Objective-C.[45] What Adobe had done in their CS5 release for the iPhone was to create a static compiler that allows developers to compile their Flash programs into apps that can run on the iPhone.[46] This would have allowed many Flash games to become apps, but still preventing web interfaces such as Hulu from working on the iPhone. But as these apps wouldn't have been originally written in C, C++ or Objective-C, they may not pass the App Store approval process when done under the terms of the iPhone SDK 4 Beta.
Unofficially, some Flash video sites can be viewed by using a jailbroken iPhone with certain third-party applications.[47] However, it results on extremely low frame rate due to the lack of memory bandwidth and CPU speed for Flash JIT execution. Another reason is the general lack of optimization of Flash for iOS, which can be seen in several benchmarks of Flash in Mac OS X.[48]
Since November 2009, Adobe has posted the following notice on the Flash download page when viewed from an iPhone:[49]
<templatestyles src="Template:Blockquote/styles.css" />
"Flash Player not available for your device
"Apple restricts use of technologies required by products like Flash Player. Until Apple eliminates these restrictions, Adobe cannot provide Flash Player for the iPhone, iPod Touch and iPad."
In November 2011, Adobe announced that they would no longer continue to develop a mobile version of Flash.[50]
Licensing
The SDK itself is a free download, but beta SDKs require a paid developer account. In order to release software, one must enroll in the iPhone Developer Program—a step requiring payment and Apple's approval. As of February 2015[ref], cost of enrollment in the iPhone Developer Program is US$99 per year (the cost varies from country to country) for the standard program. Signed keys are provided to upload the application to Apple's App Store. Applications can be distributed in three ways: through the App Store, through enterprise deployment to a company's employees only, and on an "Ad-hoc" basis to up to 100 iPhones. Once distributed through the App Store, a developer can request up to 50 promotional codes that can be used to freely distribute a commercial application he or she has developed. The SDK can only be installed in OS X, and the latest SDK (iOS SDK 8.0 with Xcode 6.0.1, as of September 2014) requires OS X 10.9.4 "Mavericks" or later.
See also
Notes
- ↑ Note that there are workarounds available which implement Flash in JavaScript – though they are not widely used.[43]
External links
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Apple Seeds New iPhone OS 2.0 Beta (5A240d), SDK Update (Beta 3) - MacRumors April 8, 2008.
- ↑ iPhone SDK Beta 4 Now Available, Comes with OpenGL ES 3D Graphics Support - Gizmodo.
- ↑ iPhone SDK Beta 5 Now Up: Bug Fixes, Updated OS Support - Gizmodo.
- ↑ MacRumors - Apple's .Mac Service to be Renamed, Revamped? - MacRumors May 30, 2008.
- ↑ Mac OS 10.6 reference in iPhone SDK beta 6 - MacRumors May 29, 2008.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ The iPhone - iPhone OS 2.2 Developers beta released
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 24.0 24.1 24.2 Lua error in package.lua at line 80: module 'strict' not found. Cite error: Invalid
<ref>
tag; name "news.cnet.com1" defined multiple times with different content - ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.