Developers, ahoy! Apple just announced a bevy of new changes to iOS 8, the latest version of its operating system for iPhones and iPads, specifically for you. Here are the highlights.
App Store Upgrades
First, Apple will now offer made app bundles and app previews in its App store to improve the shopping experience. The former lets users download a collection of apps at once; the latter are videos that show off the main features of a given app. Developers can create app bundles with all of their apps available in one package.
Finding the right apps among 1.2 million offerings in the App Store has long been an issue for Apple users. The company has put a premium on “discoverability” in its latest update by adding an “explore” tab to help users find app they’re looking for. The App Store will also now feature top trending searches, faster search with continuous a scrolling list, related searches and a new editor’s choice logo.
For the first time, Apple will also let regular users try out beta versions of their favorite developers apps with TestFlight integration.
Apple’s chief of software engineering, Craig Federighi, said iOS 8 features as many as 4,000 new developer APIs. For comparison, Apple’s iOS 7 developer kit came with 1,500 new application programming interfaces (see our API explainer)—and developers thought that was a large release.
Many will provide what Federighi called “extensibility” through iCloud and backend extensions. Extensibility, in this sense, refers to services that allow apps to communicate with one another—a novel development for iOS, which until now has largely “sandboxed” apps to ensure their security.
“This will be able to extend the system, and [let developers] offer their services to other apps,” Federighi said during the WWDC keynote. “Extensions live inside [their] own sandbox and reach out by way of Apple’s security mechanisms.” The end result: Devs will finally be able to share data between apps—for instance, allowing a third-party password manager to fill in usernames and passwords in various apps.
Outside developers will also have the opportunity to define widgets so they can exist inside notifications.
Another aspect of this “extensibility” allows developers to create dynamic widgets within the iOS Notification Center. Apple is also finally playing nice with third-party keyboards, allowing developer apps like SwiftKey and Swype to be loaded onto the iPhone and iPad.
Apple CEO Tim Cook said that the developer features in iOS 8 are the biggest since the release of the App Store in 2008. Let’s take a look at some of the highlights.
Third-party apps will now be able to use the biometric fingerprint sensor in the iPhone 5S—and, most likely—future iOS devices for authentication and other security purposes. Third-party apps will work by unlocking Apple Keychain items. App developers won’t actually get access to user fingerprints, though, as those will be stored securely on the device away from the app development environment.
The new PhotoKit gives developers new APIs for managing photo and video assets. It includes iCloud Photo integration across Apple devices as well as the ability to edit photos straight from the iOS Camera app. New features for threading and caching photo thumbnails and full-sized pictures are available as well as “resumable” editing of photo content.
Apple released a new app called “Health” for consumers in iOS 8. HealthKit is the new set of APIs and storage that will help store user health information in one place on an iOS device.
Apps can access shared health information and provide information about the user without implementing support for a fitness tracking device, meaning that the iPhone will be able to track all of that health information on its own.
Handoff is part of both iOS 8 and Mac OS X Yosemite. It is an API foundation that will let users start an activity on one Apple device and resume it with the same app on a different device.
Apple wants to be a player in smart homes, so it’s released a new framework for communicating with and controlling connected devices. Its HomeKit framework will support apps that let users to discover devices in their homes and configure them to work with an iPhone or an iPad. Users will also be able to group those devices together and even control them with voice commands through Apple’s Siri personal assistant.
The full backend services of Apple’s iCloud product now come with a new framework called CloudKit. Developers can securely store and retrieve data from iCloud for their apps. CloudKit will let users anonymously sign into apps with their Apple IDs without storing personal information.
CloudKit aims to help developers add cloud services to their apps without having to learn server-side logic. CloudKit provides authentication, private and public databases and storage. CloudKit storage will be free, albeit with limits on how much developers can use per day.
SceneKit is a new 3D graphic framework from Apple, one of several iOS 8 updates that should be exciting for game developers. SceneKit helps create 3D animated scenes and effects in games and employs a physics engine, a particle generator and a way to easily script 3D objects like shapes, materials and lighting. SceneKit will enable developers to simulate gravity and forces within apps.
Introduced in iOS 7, SpriteKit has been improved in iOS 8 with custom Open GL ES shaders and lighting, new advanced physics and animation and new scene editors within Xcode. It is completely integrated with the new SceneKit framework as well.
SceneKit and SpriteKit are designed for casual game developers. Metal is the much more robust framework for hardcore gaming, one that allows developers to directly access the iPad and iPhone A7 graphics processor for high performance. Metal is designed for better graphics rendering and computational tasks; it’s designed to exploit multi-processing and shared memory and comes with a streamlined API for unified graphics and shading language in Apple’s Xcode tool suite for developers.
Swift is basically a new Apple-created programming language that fits into iOS development in ways that complement both the C and Objective-C languages. It is a new language for the OS X Cocoa API set and Cocoa Touch frameworks for iOS, one that supposedly offers new syntax and capabilities.
We’ll have much more on Swift later.