iOS SDK
Logo | |
Developer(s) | Apple Inc. |
---|---|
Initial release | March 6, 2008 |
Operating system | macOS |
Platform | iOS, iPadOS |
Available in | English |
Type | Software development kit |
Website | Apple Developer |
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 free download for users of Macintosh (or Mac) personal computers. It is not available for Microsoft Windows PCs. The SDK contains sets giving developers access to various functions and services of iOS devices, such as hardware and software attributes. It also contains an iPhone simulator 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 through App Store, developers are required to subscribe to the Apple Developer Program.
Combined with Xcode, the iOS SDK helps developers write iOS apps using officially supported programming languages, including Swift and Objective-C. Other companies have also created tools that allow for the development of native iOS apps using their respective programming languages.
History
[edit]While originally developing iPhone prior to its unveiling in 2007, Apple's then-CEO Steve Jobs did not intend to let third-party developers build native apps for the iOS operating system, instead directing them to make web applications for the Safari web browser.[1] However, backlash from developers prompted the company to reconsider,[1] with Jobs announcing on October 17, 2007, that Apple would have a software development kit (SDK) available for developers by February 2008.[2][3] The SDK was released on March 6, 2008.[4][5]
Features
[edit]The iOS SDK is a free download for Mac users.[6] It is not available for Microsoft Windows personal computers.[6] To test the application, get technical support, and distribute applications through App Store, developers are required to subscribe to the Apple Developer Program.[6]
The SDK contents are separated into the following sets:[7]
- 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
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]
Programming languages
[edit]The iOS SDK, combined with Xcode, helps developers write iOS applications using officially supported programming languages, including Swift and Objective-C.[10]
An .ipa (iOS App Store Package) file is an iOS application archive file which stores an iOS app.
Java
[edit]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.[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, a firmware leak of the 2007 iPhone release revealed an ARM chip with a processor with Jazelle support for embedded Java execution.[15]
.NET
[edit]Novell announced in September 2009 that they had successfully developed MonoTouch, a software framework that let developers write native iPhone applications in the C# and .NET programming languages, while still maintaining compatibility with Apple's requirements.[16]
Flash
[edit]iOS does not support Adobe Flash,[17] and although Adobe 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 its Creative 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's Creative Suite 5 collection of professional applications.[21]
2010 policy on development tools
[edit]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 on App 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]
Mac Catalyst
[edit]Originally called "Project Marzipan",[27] Mac Catalyst helps developers bring iPadOS 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.
See also
[edit]References
[edit]- ^ a b "Jobs' original vision for the iPhone: no third-party native apps". 9to5Mac.com. 9to5Mac. October 21, 2011. Retrieved June 11, 2017.
- ^ Duncan, Geoff (October 17, 2007). "Apple confirms iPhone SDK coming next year". www.DigitalTrends.com. Digital Trends. Retrieved June 11, 2017.
- ^ "Steve Jobs confirms native iPhone SDK by February". AppleInsider.com. AppleInsider. October 17, 2007. Retrieved June 11, 2017.
- ^ Dalrymple, Jim (March 6, 2008). "Apple unveils iPhone SDK". www.MacWorld.com. International Data Group. Retrieved June 11, 2017.
- ^ Block, Ryan (March 6, 2008). "Live from Apple's iPhone SDK press conference". www.Engadget.com. Engadget – AOL. Retrieved June 11, 2017.
- ^ a b c Guevin, Jennifer (March 6, 2008). "FAQ: what does the iPhone SDK mean?". www.CNET.com. CBS Interactive. Retrieved June 11, 2017.
- ^ a b Kim, Arnold (March 6, 2008). "Apple releases iPhone SDK, demos spore, instant messaging". www.MacRumors.com. MacRumors. Retrieved June 11, 2017.
- ^ Mayo, Benjamin (September 11, 2015). "Apple now allowing developers to submit iOS 9, OS X El Capitan and native Watch apps to the App Store". 9to5Mac.com. 9to5Mac. Retrieved June 11, 2017.
- ^ Sande, Steven (June 10, 2013). "New iOS SDK features for developers". www.Engadget.com. Engadget – AOL. Retrieved June 11, 2017.
- ^ Sinicki, Adam (June 9, 2016). "Developing for Android vs developing for iOS – in 5 rounds". www.AndroidAuthority.com. Android Authority. Retrieved June 19, 2017.
- ^ Krill, Paul (March 7, 2008). "Sun: we'll put Java on the iPhone". www.InfoWorld.com. InfoWorld – International Data Group. Retrieved June 19, 2017.
- ^ Krazit, Tom (March 12, 2008). "The iPhone SDK: the day after". www.CNET.com. CNET – CBS Interactive. Retrieved June 19, 2017.
- ^ Krill, Paul (March 14, 2008). "Sun's plan for Java on iPhone could hit roadblock". www.InfoWorld.com. InfoWorld – International Data Group. Retrieved June 19, 2017.
- ^ "Apple, Sun talks gives hope for Java on iPhone". www.IBTimes.com. International Business Times – IBT Media. April 28, 2008. Retrieved June 19, 2017.
- ^ Block, Ryan (July 1, 2007). "iPhone processor found: 620MHz ARM CPU". www.Engadget.com. Engadget – AOL. Retrieved June 19, 2017.
- ^ Paul, Ryan (September 15, 2009). "MonoTouch drops .NET into Apple's walled app garden". ArsTechnica.com. Ars Technica – Condé Nast. Retrieved June 19, 2017.
- ^ Slivka, Eric (April 29, 2010). "Steve Jobs posts 'Thoughts on Flash' open letter". www.MacRumors.com. MacRumors. Retrieved June 20, 2017.
- ^ Cooper, Charles (March 5, 2008). "Adobe bites its tongue after iPhone Flash jab". www.CNET.com. CNET – CBS Interactive. Retrieved June 20, 2017.
- ^ Krazit, Tom (March 19, 2008). "Adobe realizes SDK not enough for Flash on iPhone". www.CNET.com. CNET – CBS Interactive. Retrieved June 20, 2017.
- ^ Dove, Jackie (October 5, 2009). "Flash-built apps heading for the iPhone". www.MacWorld.com. Macworld – International Data Group. Retrieved June 20, 2017.
- ^ Dove, Jackie (April 11, 2010). "Adobe unleashes Creative Suite 5". www.MacWorld.com. Macworld – International Data Group. Retrieved June 20, 2017.
- ^ Chen, Brian X. (April 8, 2010). "Adobe Apps: easier to pass through the 'i' of a needle?". Wired. Retrieved June 20, 2017.
- ^ Kincaid, Jason (April 8, 2010). "Apple gives Adobe the finger with its new iPhone SDK agreement". TechCrunch. Retrieved June 20, 2017.
- ^ a b Arthur, Charles (September 9, 2010). "Apple opens App Store to programs written in Adobe Flash – and more". www.TheGuardian.com. The Guardian – Guardian Media Group. Retrieved June 20, 2017.
- ^ Cheng, Jacqui (May 3, 2010). "Apple iPhone OS compiler policy may lead to antitrust probe". ArsTechnica.com. Ars Technica – Condé Nast. Retrieved June 20, 2017.
- ^ Sorrell, Charlie (September 9, 2010). "Apple eases app development rules, Adobe surges". www.Wired.com. Wired – Condé Nast. Retrieved June 20, 2017.
- ^ "WWDC 2019: Apple's Marzipan is actually Project Catalyst". www.CNET.com. CNET. Retrieved June 3, 2019.