Google I/O 2017: 8 Major Takeaways for Android Developers

Aritra Roy
Aritra's Musings
Published in
9 min readMay 27, 2017

--

The annual Google developer conference, Google I/O 2017 have just ended and we can’t hold our excitement with the vast array of announcements made public, Android holding significant importance in them.

For Android developers, this year’s Google I/O have been nothing less than a party. There are lots of amazing things released for the developers to play with and make better and more profitable apps down the road.

So, without wasting any time further let’s discuss some of the major takeaways from this year’s I/O that no Android developer can afford to miss.

(Image source: techcrunch.com)

Kotlin is now the official programming language for Android

There can’t be a bigger and better news than this. All our wishes have finally come true when Google declared Kotlin to be the officially supported programming language for Android, making it the third language after Java and C++.

This brilliantly designed, statically-typed language gives you a chance to use modern and powerful language features making your development life fun productive and interesting once again.

Kotlin code is much more concise and understandable than Java without sacrificing quality and performance in any way. Kotlin has null-safety built into its type system so that you can forget about those dreaded NullPointerException’s crashing your app all the time at runtime.

It is 100% interoperable with Java, letting you gradually introduce it into your existing projects without making any compromises. So, what are you waiting for? It’s high time to get started with Kotlin.

Bonus: Google has started releasing their samples now in Kotlin as well, check it out here.

Recommended Reading

(Image source: androidpolice.com)

Android O makes its way to Beta

We had a chance of looking into the first Developer Preview of Android O back in March and we were extremely excited seeing all the goodness it brought to the world of Android.

And now it has matured enough to be released as Beta (Developer Preview 2). It brings all the amazing things like Picture-In-Picture Mode, Notification Channels, AutoFill Framework, Adaptive Icons, battery life improvements with restricted background processing capabilities that we had talked about in an earlier post in detail.

Now we get a chance to look at some more new features like Notification Dots over app icons, smart AI-powered text selection capabilities, an optimized garbage collector for faster runtime, up to 2X quicker boot times, improved security with Android Vitals and much more.

The APIs are not yet final and we need to wait till the release of Developer Preview 3 for that, but you can obviously start developing and testing the new features for your app right away. The earlier you start, the faster you can get your app ready for Android O.

Recommended Reading

(Image source: droid-life.com)

Android Go is announced — Lightweight OS for budget smartphones

Android now has over 2 billion monthly active devices, but to reach the next billion users, Google needs to make the OS more resource efficient and Android Go is their answer to it.

Android Go will basically be a lightweight version of Android O which will automatically kick in for any device with 1GB or 512 MB of RAM. The OS is significantly optimized to run smoothly on such low-end devices.

It’s the right time for developers to start spending time in making apps which can work perfectly on less memory, takes little storage space and is very conservative on mobile data usage as well. Moreover, Google Play will automatically start promoting apps that meet these criteria and can run flawlessly on any entry-level device.

Android Studio gets a major update

The release of Android Studio 3 shows Google’s dedication towards providing us with the best development tools, always.

This new update brings a lot of new and amazing features to the table like an outstanding Kotlin support baked directly into the IDE (no more fussing around with external plugins). The built-in conversion tool does a great job in converting your existing Java code into Kotlin code.

You can also paste any Java code into a Kotlin file to experience it magically getting converted into its Kotlin equivalent. But “equivalent” code doesn’t always mean “optimal” code. So try to write the Kotlin classes yourself whenever you can.

The Layout Editor also gets an update with some additional enhancements like better drag-and-drop support and a new error panel. There is also an easy-to-use tool to implement Adaptive Icons in your app. Adding custom fonts in your app (targeting Android O) is now easier than ever with built-in support from the IDE.

Network Profiler in Android Studio 3

This new IDE also includes a brand new Android Profiler to get real-time data of CPU, Memory and Network activity of your app. It is very simple to use and is packed with lots of features to help you build high-performance apps easily.

Improving the build speeds have always been a major concern for a long time and this new update brings a considerable improvement in the build times especially for multi-module projects.

Tip: Download and install the latest Android Studio 3 Canary 1 and keep it alongside your stable AS version to enjoy the best of both worlds.

Recommended Reading

Google Play Console is smarter than ever

Android Vitals is a great initiative to help developers understand their app’s performance and make better apps. It can give you really useful insights to improve your app’s stability (crashes and ANRs), battery consumptions (excessive device wakeups) and UI rendering time (frame rate).

Google has also added a new Device Catalog in Play Console showing rich data of thousands of Google certified devices running Android all in one place. The catalog shows you the installs, cumulative rating, and revenue for a particular device where your app is installed so that you can make the right business decisions based on that.

There are several other minor updates to various sections of the Play Console like the Statistics page, Financial Reports page, Release Dashboard, Pre-Launch Report page and more.

The new Android Architecture Components can make app development easier

Architecting Android apps properly with the aim of making them robust and easily testable have never been an easy task.

There are some common problems that are faced by developers almost every day in their app development life. In this I/O, Google announced a set of awesome libraries to address this problem and help us architect better apps.

Developers have always been upfront in complaining about how complex and tedious Android lifecycle management can sometimes get. But with the help of the new lifecycle aware components, you can manage your Activity’s and Fragment’s lifecycle, survive configuration changes and avoid memory leaks easily.

They have also released an SQLite object mapping library, Room, to make database management easy and hassle-free. With easy database migration, relationships and RxJava 2 support, this new persistence library seems to be the right step forward.

Tip: Here is a complete guide telling you how Google wants you to architect your Android app.

Recommended Reading

(Image source: androidauthority.net)

Android Instant Apps is now for everyone

Google had announced Instant Apps around this time last year allowing only a select set of partners to built those amazing, bite-sized apps that can run instantly without downloading anything from Play Store.

But now with the launch of the public SDK at this year’s Google I/O, Instant Apps are available to everyone. It is surely an exciting news for all developers out there who can’t wait to get their hands on the SDK and start building Instant Apps.

They have also given support in the new Android Studio for modularizing your app and making them Instant App ready with ease. You don’t need to create a new app or maintain a separate codebase for Instant Apps, all you need to do is modularize your app properly on the basis of separate isolated features.

There is an in-depth guide with code samples available officially from Google to help you create Instant Apps right now.

Recommended Reading

Firebase is better than before and now open-source

Google had announced Firebase and its amazing suite of products on last year’s Google I/O and in the span of just one year it has managed to gain massive popularity among developers mainly because of its amazing simplicity, scalability, and easy-of-use.

And now to take a step forward and improve transparency, they are open-sourcing some of their client SDKs on Github so that we can have a look at how Firebase actually works under-the-hood and contribute to it as well. You should definitely check out the Firebase iOS SDK, JavaScript SDK and Admin SDKs which are currently available on Github with more to come soon.

After Fabric joined hands with Firebase, things are evolving at a much faster pace. Now they have released the Firebase Phone Authentication letting us sign-in users with their phone number seamlessly. Moreover, it is free for up to 10,000 verifications per month.

With a huge focus on app performance and quality, Google has also announced the Firebase Performance Monitoring tool that gives you deep insights on various performance metrics of your app (like app startup time, network performance, etc.) that you were completely unaware of.

This can help you understand the exact experience your users are having and how you can optimize it to increase engagement, retention and revenue.

As you can see, this year’s Google I/O promises a lot of great things coming to the world of Android. There are some amazing development tools and services released to make our development life easier as well.

The focus is now shifting more towards making high-quality apps that can perform well on even the most low-end device available on the market. Google is trying hard to help us build better apps than ever before and reach the next billion users.

This article was originally published on TechBeacon.

--

--

Design-focused Engineer | Android Developer | Open-Source Enthusiast | Part-time Blogger | Catch him at https://about.me/aritra.roy