Apple opened this year’s WWDC with a video that focused on apps. Tim Cook came to the stage and promised that app developers would be the featured subjects of a chunk of the presentation. And after an hour long wait, Apple showed off the developer-centric iOS 8. Though it’s not the major makeover on the user-end that iOS 7 was, Apple pulled back the curtain of the newest iteration of its mobile OS to reveal some major changes coming for developers.
App Store Improvements
Starting on the surface level with the place that users first interact with apps, Apple has given developers new ways to be found and to stand out in the App Store. Trending searches show what is currently popular in the App Store so you won’t have to be the last of your friends to download the next Flappy Bird-type hit. Users will also be shown related searches when searching through the App Store and can browse using a new Explore tab that categorizes apps in an easier to navigate way.
Apps now get the Apple stamp of approval with an “Editor’s Choice” tag applied by the app’s rating to point users toward popular applications. Developers can also show off their apps with a new preview feature. Rather than just showing a handful of screenshots, developers can include a video of the app in action. Developers will also be able to bundle their apps together, making it possible for users to download a package of services from the same company with one tap.
iOS SDK Improvements
The real changes for iOS 8 come under the hood. It’s a long, diverse list of improvements in the iOS 8 SDK (software development kit) that might sound like a foreign language to non-developers – even our heads were spinning trying to keep up. Tim Cook stated, “this release is the biggest [developer] release since the launch of the App Store.” Here’s what developers can look forward to playing with, along with an idea of how it will effect users on the receiving end of the developer-centric update.
TestFlight: TestFlight – recently acquired by Apple in February – is thew new beta test service for developers and users. It will allow developers to open up their apps in beta directly to their users and receive feedback seamlessly. The service is free and will show developers information about their app right within the service. This should mean more open access for beta and better stability upon release.
Extensibility: Apple has added over 4,000 new developers APIs (application programming interfaces) in the SDK. The “most profound” of which according to senior vice president of software engineering Craig Federighi, is Extensibility. This adds the ability for apps to offer services within other apps.
So the way that Apple includes the ability to share via Facebook and Twitter within iOS, now an app like Pinterest can do the same.The other example shown off on stage was the inclusion of third party photo filters built into Apple’s Photos app. Federighi explained, “To handle extensibility in the iOS way, extensions live in app sandboxes, but apps can reach out to those apps.”
Widgets: Apple made a big deal about the inclusion of widgets in its interface, and the ability to participate in that extends to third-party developers. Those devs will be able to define their own widget as it appears in the Notification Center and in the Today view.
For users, this means getting the information you want from apps right from the always-accessible Notifications Center. For example, one could place an ESPN SportsCenter widget in their Today view and see up-to-date scores from their favorite teams. Federighi showed off an eBay widget that allowed him to track an auction and place a bid from without opening the app. It’s a competitive feature to the Windows live tiles or Android widget system.
Third party keyboards: For the first time ever, Apple will open up its mobile OS to third-party keyboards. This is clearly part of a larger decision to integrate third-party services into the operating system. Despite announcing its own keyboard update, Apple will allow users to choose their own keyboard from other developers to use as their primary typing option. The on-stage presentation showed off Swype in use within iOS 8.
Keyboard customization has been huge for Android and the ability to use an alternative keyboard in iOS will be a welcome addition.
Touch ID: In continuing to open up, iOS 8 will allow third party apps to utilize Touch ID. Developers will be able to utilize the authentication service to protect the user data stored within their app. For apps with sensitive information like Mint or 1Password, the extra layer of protection beats the standard, hackable one-layer password protection. Users will enjoy the quick login while feeling more secure. It’s also worth noting that developers won’t have direct access to users fingerprint information.
New camera and photo kit APIs: Not much was really mentioned about this, but Apple did make a point to say that it has updated its camera and photo kit APIs. We assume at least some of this has to do with the previously mentioned Extensibility features. Apple also made note of opening up the ability to tweak the settings of the camera.
HomeKit: While HealthKit was Apple’s solution to health information existing in many different apps, HomeKit is its attempt to bring all home automation options into one place. “There are great apps and devices on the market, but we thought we could bring some rationality to this,” said Craig Federighi. The idea is to turn iOS devices into a smart remote for the home. Smart devices including garage door openers, security cameras, and locks can be managed from within HomeKit.
Apple showed a plethora of companies that this service will work with, including products like Philips’ Hue lights and August’s smart locks. The protocol Apple has introduced is designed to let all the smart devices available from various developers work together in a cohesive way. Users will get the benefit of Apple’s interface, including Siri commands for control (for example, telling Siri to “get ready for bed” will automatically lock the doors and dim the lights).
CloudKit: CloudKit is another tool designed to simplify the work of developers. Apple takes on the server-side responsibility for the apps, giving the developer a cleaner and easier to use development experience on their side. This should eliminate the need for managing servers while building an app. The service is available for free with some limits that kick in with heavier usage.
Metal: For game developers using iOS, Metal “dramatically reduces OpenGL overhead.” OpenGL is the current standard in 3D graphics for iOS, but Metal looks to take over. The results produced by Metal are improved performance and graphics, which Apple showed off through demos from EA’s Plants vs. Zombies: Garden Warfare. Using Metal, EA was able to use its Frostbite engine — an engine designed for consoles — to run the game on an iPad.
Tim Sweeney from Epic Games showed off what Metal is capable of through a demo of a zen garden that featured some impressive visuals, including a koi pond where each fish had its own artificial intelligence and a waterfall that turned into a huge swarm of butterflies. What the visual-heavy demo means is when Metal is available with iOS 8, game visuals on iOS devices will reach new highs.
SceneKit: While Metal is for high-end graphical gaming, SpriteKit is the SDK for casual games. Apple added a new feature to it, which it called SceneKit. SceneKit adds a 3D scene renderer along with improved per-pixel physics, light sources and field forces, and inverse kinematics. All of this means making apps is easier – assuming you understand those terms in the first place.
Swift: Perhaps the biggest change for developers came last in the WWDC 2014 presentation. Apple took a look at Xcode and the language that is central to the toolkit, Objective-C. To simplify the programming language that has been used for the past 20 years, Apple stripped out the “baggage of C” and introduced its new programming language: Swift. According to Craig Federighi, “it totally rules.”
Developers using Swift will be able to see the results of their coding in real time as they write the code. As the name would suggest, Swift is considerably faster than Objective-C, as well. Swift will also be able to run side-by-side with Objective-C and C code within the same app. Swift is included in the Xcode 6 beta, which is available now so they can get their hands on it immediately.
It sounds technical, but this stuff will matter to you
Much of what was discussed with Swift will sound like nonsense to those who aren’t coders or developers, but the reaction of the developers in the room made it clear that it was a well-received announcement. It should simplify the app development process and eliminate coding redundancies and common errors that exist within other coding languages. The end result aims to make it easier for developers to write code that will be safer and more reliable.