There are a lot of hoops to jump through when it comes to Apple iOS application development.
First developers have to learn Xcode, the integrated development environment for iOS. Then they must navigate a labyrinth of certificates, licenses and profiles, all of which come with different expiration dates and renewal rules. If they are able to make it through to the other side, they still have to figure out the best way to deliver apps to users.
Cut through the chaos to find out how the iOS app publishing process works, what the app delivery options are and more.
How does Xcode work?
Xcode, runs on Macs and has everything developers need to build OS X, Apple Watch, Web and iOS apps. Since 2014, Xcode uses Swift for its coding language rather than Objective-C, which is a difficult language for developers to learn and transition to. With iOS 9, Apple introduced Swift 2.0. Developers can put their code into a Git repository and share it with other groups to collaborate on the development process.
Xcode's Model-View-Controller approach makes managing the code in each app easy with tools such as the Interface Builder, which lets developers drag and drop different visual controls into the app code. AutoLayout helps developers control the app's presentation based on the size of the user's screen. With Storyboard, developers can see what each screen of the app looks like, and Preview Mode delivers a sneak peek of what the app will look like when it's done.
Xcode is free to use, but if developers want to publish their apps to iTunes or the Mac OS X Store, they have to pay $99 for an annual developer's license.
What's the deal with the app publishing process?
Even if developers know how to use Xcode, getting an iOS app published is no simple feat. The first step is to register in the iOS Developer Enterprise Program, which costs $299 per membership year. Once an organization is enrolled, its developers each have a provisioning profile, which they can use to sign iOS apps with an enterprise certificate and choose which devices the app runs on. Each certificate lasts a calendar year. As a result, developers have to republish their apps every year with a new certificate.
The fun doesn't stop there, though. The developer also has to send a certificate signing request to the iOS Provisioning Portal. Once the certificate signing request is approved, the developer can sign the app for an unlimited number of devices. These certificates last three years.
What options exist for delivering apps to users?
Once developers are through the iOS application development maze of certificates, they can use Apple's App Store to deliver apps to users. The Volume Purchasing Program lets organizations deliver apps to users' devices without associating them with an Apple ID.
There are alternatives to the app store. Admins can deliver their iOS apps to users over the air from a Web server without ever having to connect a device to the iOS Configuration Utility host. Users simply click a URL to download the apps, and IT can protect the apps with encryption so only authenticated users can access them.
In addition, admins can deliver apps through iTunes, but this approach is only realistic when users connect their iOS devices to a PC or Mac running that software. Another method that requires a connection to Mac or PC is Apple Configurator, which works best when admins are setting up around 30 devices at once.
Find the ideal cross-platform app development tool
Standardize the app development process
A look at Windows mobile app development