Google I/O 2018 Keynote Reaction
See some of the major announcements from the first day of Google I/O 2018, and a detailed summary of the three keynotes at the beginning of the conference, in case you missed them. By Joe Howard.
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Contents
Google I/O 2018 Keynote Reaction
30 mins
What’s New in Android
As is tradition, the What’s New in Android session was run by Chet Haase, Dan Sandler, and Romain Guy. They describe the session as the “Android Keynote”. In the session, they summarized the long list of new features in Android and directed you to the sessions in which you can learn more.
The long list of new features in tooling and Android P is summarized here:
- Android App Bundles to reduce app size.
- Android JetPack includes Architecture, UI, Foundation and Behavior components. Mainly a repackaging and you’re already familiar with most of what’s in it, but they’re adding to it, and also refactoring the support library to be AndroidX. New features are Paging, Navigation, WorkManager, Slices, and Android KTX.
- Android Test now has first class Kotlin support, with new APIs to reduce boilerplate and increase readability.
- Battery Improvements include app standby buckets and background restrictions that a user can set.
- Background Input & Privacy, where in background there is no access to the microphone or camera.
- Many Kotlin performance improvements from ART, D8 & R8. Increased nullability annotation coverage in the support library and libcore, and easier to use platform APIs. Android KTX, to take advantage of Kotlin language features in Android APIs.
- Mockable Framework, and Mockito can now mock final and static methods.
- Background Text Measurement which offloads and pre-computes text measurement on a background thread so there is less work done on the UI thread.
- Magnifier for text but also an API for other use cases.
- Baseline Distance between text views for easier matching with design specs.
- Smart Linkify to detect custom link entities using ML in the background.
- Indoor Location using android.net.wifi.rtt.* for WiFi Round-Trip-Time APIs.
- Accessibility app navigation improvements.
- Security improvements via a unified biometric dialog, stronger protection for private keys, and a StrongBox backend.
- Enterprise changes that include switching apps between profiles, locking any app to the device screen, ephemeral users, and a true kiosk mode to hide the navigation bar.
- Display Cutout, aka the notch, using WindowInsets. There are modes for “never”, “default”, and “shortEdges” with variations
- Slices are a new approach to app remote content, either within an app or between apps. They use structured data and flexible templates and are interactive and updatable. They’re addressable by a content URI and backwards-compatible in Android Jetpack all the way back to API 19.
- App Actions are related to slices and act as deep links into your app. They are “shortcuts with parameters” and act as a “visible Intent”.
- Notifications have a new messaging style and allow images stickers and a smart reply UI.
- Deprecation Policy has been updated and apps will soon be required to target newer versions of Android, for security and performance. As of August 2018 new apps must target API 26 or above. November 2018 for app updates. And in August 2019, 64-bit ABI will be required.
- App Compatibility means no more calls to private APIs.
- NDK r17 includes the Neural Network API, JNI Shared Memory API, Rootless ASAN, and support for UBSAN. It removes support for ARMv5, MIPS, and MIPS64. NDK r18 will remove gcc support, instead you must use clang.
- Graphics and Media changes include camera API improvements like OIS timestamps and display based flash, support for external USB cameras, and multi-camera support. There is an ImageDecoder, support for HDR VP9, HDR rendering on compatible hardware, and HEIF support the HEVC/H.265 codec, a container for multiple images.
- Vulkan 1.1 has lots of improvements to the graphics API, including multi-GPU support and protected content.
- Neural Network API 1.1 is a C API for ML and on-device inference. TensorFlow is built on top of it, and it’s hardware-accelerated on the Pixel 2.
- ARCore additions such as Sceneform.
- ChromeOS now allows Linux apps and soon Android Studio on ChromeOS, for a full-blown Android development environment.
Summary
Overall, the keynotes saw Google proudly representing their AI prowess. They are making incredible and futuristic advances while also attempting to ensure that the advances in AI are used in responsible ways for the benefit of all (except maybe certain competitors :] ).
Google is spreading their AI capabilities and expertise across the entire business, and at the same time making it easier for developers to use in their own apps.
Google AI is clearly ahead of competitors in terms of performance and accuracy. By helping developers integrate the technology into more and more apps, Google and its platforms like Android will maintain their lead and keep bringing these futuristic features to more and more people around the world.
Where to go from here?
There was so much to digest in just these three sessions! You can see them for yourself at these links
Keynote: https://www.youtube.com/watch?v=ogfYd705cRs
Developer Keynote: https://www.youtube.com/watch?v=flU42CTF3MQ
What’s New in Android: https://www.youtube.com/watch?v=eMHsnvhcf78
There’s a nice short introduction to Android Jetpack here:
Introducing Jetpack: https://www.youtube.com/watch?v=r8U5Rtcr5UU
And here are some links given out during the keynotes to various new technologies:
- http://g.co/androidjetpack
- http://g.co/androidstudio for 3.2 Canary
- http://g.co/slices
- http://actions.google.com
- http://g.co/cloudtpu
- https://github.com/material-components/
- http://developer.google.com/ar
Some condensed versions of the opening keynote are here:
- Google: https://www.youtube.com/watch?v=NeF0zpT4gNE
- The Verge: https://www.youtube.com/watch?v=BRUvbiWLwFI
Finally, you can see the full Google I/O 2018 schedule here, with descriptions of the various sessions that you may want to later check out on YouTube:
https://events.google.com/io/schedule/
Two which you definitely want to see if you’re an Android developer are:
- Modern Android Development: https://www.youtube.com/watch?v=IrMw7MEgADk
- What’s New in Android Development Tools: https://www.youtube.com/watch?v=WxAZk7A7OkM
What did you think of all the announcements made on the first day of Google I/O 2018? Share your thoughts in the forum below.