Every year tech enthusiasts and the media alike get excited to attend Google's annual developer conference, Google I/O which is held in San Francisco. For many, this year's long anticipated event to announce Google's latest devices, or their exciting new features has been a disappointment.
Gone are the years, when Sergey Brin skydived into Moscone Center, whilst having a live Hangout with the audience through a Google Glass headset. Or, when Google announced a range of new devices, which were given to all attendees of the conference (although this year's attendees did get a couple of free devices, it just wasn't announced in the keynote). It was this year that the event focused primarily on developers and that is how it should be.
The key announcement was Android M, no dessert themed name just yet as it's still in developer preview. Following on from last year's L preview before it became Lollipop, system images are provided for Nexus devices under two years old, which developers can then use to test their apps, before the release goes live in the Autumn. M is light on the visual upgrades and is mostly under the hood changes. The key changes are that Android now has support for fingerprint scanners built in, meaning developers can leverage these API's to authenticate purchases within their apps.
Another change for both developers and users is with the permissions on Android. Currently a developer specifies all permissions that their app uses and the user has to accept all of them at install time, or they don't get to download the app. However, when M is released, developers can request access to a permission only when they need it. This will give users more control over what an app has access to and denying any permissions they don't feel are necessary. iOS has handled permissions this way from the very beginning and it's nice to see Google realising this is much better for users, even if it is a little more work for developers. Users on M can also manually go into the settings and disable any permissions set by the app, even if the app hasn't been updated to support the new model. This means developers need to thoroughly test how their app behaves when a permission is denied to them, even if they weren't planning on updating their app to the new model.
Android Pay was another announcement, which works pretty much the same as Apple Pay. It allows you to pay with NFC in physical stores, in apps or on websites with a click of a button. There was no word on if it will manage to escape America anytime soon, but even Apple seems to be taking a while with their mobile payments system.
Brillo and Weave was possibly one of the more interesting announcements, but details were pretty thin on the ground within the keynote. Brillo is basically Android for the home and Weave is an Internet of Things protocol for connecting those devices to the cloud and to your more standard devices, such as phone, tablet or PC. To put it simply, it could allow you to turn your Brillo oven on from your smartphone, so it's preheated by the time you arrive home.
Google Now on Tap is an update to the Google Now service, which tries to provide you information as you need it without you having to ask. Now on Tap takes this further by providing this information in the context of what is currently on your screen. For instance, you might be reading a text message, asking you to see a film and the film is mentioned by name. Holding the home button will activate Now on Tap and present you with things like ratings for the movie and show times at the nearest cinema. To take advantage of these features, developers just need to follow Google's guidelines for app indexing and deep linking.
Google also took some time to talk about iOS and how they now support GCM for iDevices. This means you don't need to set up Apple Push Notification Service yourself. You will just have to upload your certificate to the GCM dashboard and register devices with them instead and Google will handle it from there, which is especially useful if your app is cross platform with Android. They also announced that all their SDKs will now be distributed through Cocoapods, making it super easy to get them into your iOS project.
There were many other API's and tweaks to Android, which were announced along with tools to help developers in Android Studio. Whilst there are far too many to talk about here, all of the live streamed sessions are up on the Google Developers YouTube page. They're currently running 100 days of Google Dev, which is 100 days and 100 videos all about developing with Google - a great way to learn something new each day, which takes less than 10 minutes.