June 4, 2015 // By Norton Lam
I had the pleasure of attending Google I/O this year.
As usual, the conference was full of big announcements and cool technologies. Whether you are part of an enterprise, a developer, or a consumer, there was something there for you.
This post focuses on the big announcements at Google I/O that will impact developers. For Google I/O news focused on the enterprise, click here. If you want to read from consumer perspective, click here.
Android M was, of course, the big news coming out of I/O. However, besides M, there were some big announcements that developers will want to take note of.
The Android M preview has three big features that will affect developers.
Android has adopted the iOS method of permissions and now asks for them upon first use instead of at time of install. This is great for users, but as a developer, app permissions will take some getting used to. Google is encouraging all developers to convert to the new permissions paradigm as soon as possible. Older OS versions will still work, so updating code will not affect current users; however, this new paradigm is a big shift that Google wants Android apps to be ready for as users start to upgrade.
Google is standardizing fingerprint authentication after Samsung started to release hardware to support the feature. They seemed to have thought through the capability well. However, while developers may want to start experimenting with the new API now, releasing an app to users with the capability should probably wait for more hardware support and API maturation.
Apps can now get indexed and integrated into Google Search to get more noticed and increase their user base. A compelling demo using Eventbrite was shown at the conference.
Developers should be encouraged to check out this new feature and take full advantage of Google Search to expand the usage of their apps.
Android Studio 1.3
Google announced the next version of Android Studio. It has some really nice features for developers. Here are just a few:
Support for Vector Drawables
Probably one of the biggest headaches with Android development is getting images right. Sizing images for hdpi, xhpdi, xxhdpi, etc. can be troublesome. However, now Android will accept vector drawables in the form of .svg files and adjust them accordingly. This will make developers’ and designers’ lives alike much simpler.
Type Annotations in the Debugger
How many times has a developer been debugging and seen an integer value—even when that integer is defined as a constant? Tracking down the actual meaning of the integer can be time consuming and frustrating. However, if that integer is defined as a type, Android Studio will now link to the type and give the actual constant value instead. This is a much-needed feature that will really help speed up the debugging process.
Android Studio 1.3 now does extensive data binding within the layout xml resource files. It allows you to bind specific data elements to attributes in the xml files. It’s a powerful feature that can really expedite development and is worthwhile taking the time to understand it.
Support for C/C++
Developers that do any work with the NDK will appreciate this feature. Google has worked with IntelliJ to integrate their C/C++ IDE into Android Studio. This means developers will be able to use all the features of Android Studio like Find Usages, Refactor, and Go To Declaration/Implementation with their C/C++ library seamlessly. This will save a lot of time make developing with the NDK.
Android Studio 1.3 is currently in beta and available in the canary upgrade channel. Google plans to release it to the public later this year.
Android Design Library
When Material Design was released last year, it was up to developers to figure out how to implement the new paradigms on Android. Now Google has made it much easier by providing an Android design library. It provides for easy creation of material design elements such as the floating action button, navigation drawer, and tabs. It also brings material design all the way back to Froyo, so it’s definitely worth checking out.
Cloud Test Lab
Probably the biggest news to come out of this year’s I/O for developers is the new Cloud Test Lab. Testing for the thousands of Android devices can be daunting. Most developers only test on a handful of devices under mostly happy path conditions. Cloud Test Lab will now allow users to test on thousands of devices under a multitude of conditions. And all for free!
Cloud Test Lab will be integrated in both the Play Store Dashboard as well as Android Studio. The Play dashboard will make use of the Alpha and Beta channels to submit .apk executables to the Cloud Test Lab and return results. Developers will kick off testing jobs from the dashboard and reports will be returned with stack traces and video of how the testing robots interacted with the app. In Android Studio, developers will be able to select specific devices, specific Android OS versions, and test various conditions like network connectivity.
Note that the Cloud Test Lab is a monkey testing feature so it will be most useful for sanity checks against multiple devices to make sure apps don’t crash. However, it will later support scripts from Espresso and Robotium to do more specific app feature testing. Cloud Test Lab doesn’t yet support login features except login via Google+, but Google assures everyone that will be available in the coming months.
These are just a few of the new product to come out of I/O for developers. Polymer 1.0, Project Brillo, Weave, and developer pages in the Play store are some others. Developers should read the press releases coming out of I/O to find all the new products and find what will be useful for them.
Interested in how these new Android changes affect your enterprises mobility roadmap? Talk to the mobility experts at Magenic by emailing us or calling us at 877-277-1044.