This year's WWDC has not only lived up to expectations, but in my opinion has way surpassed even the toughest critic's expectations. With a slew of news and updates, I've decided to compact into a concise list, all the important iOS 8 announcements, that will benefit developers and tech shops, as they look on developing the next generation of apps, for their clients. Here's A concise summary of WWDC 2014 for developers:
Apple has opened up it's Notifications engine, which includes the lock screen to third party development. Somewhat short of what Android offers with it's desktop widgets, Apple's Notifications widgets allow developers for the very first time to expose parts of their apps to more than just notifications, but allow interactive elements such including buttons, such as 'Like' or 'reply back', show graphs or interactive graphics (think the standard Apple stocks widget) all without having to launch the app itself.
Another feature adopted from Android's ecosystem, third party developers now have the ability to create their own fancy keyboards. For a few years we have seen Android users enjoyed custom clever keyboards like Swype, it's iOS' turn now to enjoy that. But the potential goes well beyond creating a different keyboard layout, password-security developers such as 1Password and LastPassword can now integrate a keyboard that can inject stored complex credentials right into it's custom keyboard, allowing you to directly access your passwords in Safari or another third party app.
Apple have introduced their version of DropBox, iCloud Drive which will be fully baked into both iOS and OSX Yosemite. This means, you have a full iCloud filesystem on both operating systems, moving files to and from. This is just the consumer side, from the developer's side, you get CloudKit, a sort of Amazon Web Services solution with 50GB free, allowing you to store user data in a database-like manner. Whilst this may not fully deprecate other cloud solutions, for simpler solutions where you don't want to invest in a server-side solution, this is the perfect way to go.
iCloud APIs enable your apps to store app data in iCloud, keeping your apps up to date automatically. Use iCloud to give your users a consistent and seamless experience across iCloud-enabled devices.
This certainly came out of the left field, Swift language is promised to be robust and faster than Objective-C, as it doesn't contain the legacy-C baggage of the latter. This is pegged as the future of iOS and OSX development, and over the next few years we will see the transition, but it may take some time. For now, it will work together with Objective-C in the same project, but developers will need to invest more time in working with this Python-esk language.
Android doesn't hold exclusive domain to this anymore, and now iOS apps can fully talk to each other, beyond the traditional 'sandbox-ing' we are accustomed to. Using extensions, you decide what features of your app you can share between apps, so if you are creating your own social media app, you can have a like feature or share feature that you expose as a contract, allowing other apps to make use of a certain feature of your app (sort of like headless app) rather than launching your app fully.
The rumours have been quite accurate with this (besides the yet to be announced iWatch) API, Apple have opened up a consolidated 'Health Store' allowing third-party health and fitness developers to share their data with Apple's Health App, centralising storage of all the person's health information. If all the big players, such as RunKeeper and Nike+ will participate, the benefits of it means you have one central app that you can show and export information to your health provider. The API is quite sophisticated, allowing developers to easily work with various measuring metrics for various health measurements, which you learn to appreciate once you start getting into the data and analytics. Apple for example can easily aggregate and sum up stats for you, taking care of the maths for you if you are aspiring to create your own app. Third party hardware developers can be hooked up and interact with the HealthKit API as well.
Android a year ago introduced the Android at Home initiative which didn't really take of, but now Apple has come onto the podium with HomeKit. Billed as the API to allow third-party hardware vendors to embed smart logic to allow anything from toasters to garage doors and lights and TV to interact with iOS. Based on Apple's certification program, you can allow for smart locks for doors and other creative and amazing things, such as a slow cooker that talks to you when you are at work.. How about that...
Apple introduced the Touch ID capabilities late last year with their iPhone 5s, but had largely limited that to simply unlocking your phone. Now, companies like 1Password and PayPal, as well as anyone else keen on providing a finger-print authentication to access part of their app can now do so. We will see the likes of banks and other financial apps being able to leverage a new mode of authentication, although Apple will probably want to stress that touch-ID should be used as a secondary form of authentication, rather than the primary or sole method. It is more secure than a four-digit pin but far less secure than a proper password, but nevertheless I am excited to see how this will progress.
Since Apple's acquisition of one of the platform's most popular distribution framework, we have all been wondering whether Apple simply planned on deprecating the service, but in fact they have made beta testing a whole lot more convenient with their complete integration of TestFlight into the upcoming XCode 6.
TestFlight will allow developers to offer 1,000 users beta versions of its apps. That’s 1,000 individual users, not devices – an important distinction that any developer who has ever beta tested its apps will appreciate. (TechCrunch)
Gone are the days of having to email testers to get their UDID before setting up in a Provisioning Profile and distributing it. Along with that, managing provisioning profiles is a lot easier now, where you simply have to remember your Apple ID, it will then manage the provisioning profiles you need, making moving from one development machine to another painless.
iTunes Connect, the tool that Apple offers to developers to keep track of the apps they have on the store, has also been revamped with a cleaner design. In addition, it now offers expanded analytics that let developers track downloads of apps, retention (how long people keep using their apps) and even how many visits there have been to a developer’s app page (TechCrunch)