On June 25, 2014, at the Google I/O event, taking place in San Francisco, Google announced the release of the latest version of the Android operating system, which has been given the code name of “L.” In addition, Google I/O was also the platform to show a number of different projects that Google has been working on.
Basically, what was witnessed for the first time last night by thousands of developers, as well as everyone who tuned into the live stream, was early access to a development version of an upcoming release. The L Developer Preview has been made available to allow developers to explore many of the new features and capabilities of the next version of Android. This will give the developers an opportunity to begin developing and testing on the new platform.
According to Google’s Sundar Pichai, "It has over 5,000 new APIs. The OS is designed for form factors beyond mobile." Some of Google’s interests beyond your smartphone and tablet include Android to the TV (Android TV), to the car (Android Auto) and to wearables (Android Wear). The L developer SDK will be available for download from Google today. The full public release is expected to be available sometime later this year, by the fall.
Some of what developers can expect to take advantage of includes;
- Material design for the multiscreen world — Google has been working on a new design language that takes a comprehensive approach to visual, motion and interaction design across a number of platforms and form factors. Material design is a new aesthetic for designing apps in today’s multi-device world. The L Developer Preview brings material design to Android, with a full set of tools for your apps. The system is incredibly flexible, allowing your app to express its individual character and brand with bold colors and a variety of responsive UI patterns and themeable elements.
- Enhanced notifications — New lockscreen notifications let you surf content, updates and actions to users at a glance, without unlocking. Visibility controls let you manage the types of information shown on the lockscreen. Heads-up notifications display content and actions in a small floating window that’s managed by the system, no matter which app is in the foreground. Notifications are material themed and you can express your brand through accent colors and more.
- Document-centric Recents — Now you can organize your app by tasks and present these concurrently as individual “documents” in the Recents screen. Users can flip through Recents to find the specific task they want and then jump deep into your app with a single tap.
- Project Volta — New tools and APIs help your app run efficiently and conserve power. Battery Historian is a new tool that lets you visualize power events over time and understand how your app is using battery. A job scheduler API lets you set the conditions under which your background tasks and other jobs should run, such as when the device is idle or connected to an unmetered to a charger, to minimize battery impact.
- BLE Peripheral Mode — Android devices can now function in Bluetooth Low Energy (BLE) peripheral mode. Apps can use this capability to broadcast their presence to nearby devices — for example, you can now build apps that let a device function as a pedometer or health monitor and transmit data to another BLE device.
- Multi-networking — Apps can work with the system to dynamically scan for available networks with specific capabilities and then automatically connect. This is useful when you want to manage handoffs or connect to a specialized network, such as a carrier-billing network.
- Advanced camera capabilities — A new camera API gives you new capabilities for image capture and processing. On supported devices, your app can capture uncompressed YUV capture at full 8 megapixel resolution at 30 FPS. The API also lets you capture raw sensor data and control parameters such as exposure time, ISO sensitivity, and frame duration, on a per-frame basis.
- New features for game developers — Support for OpenGL ES 3.1, gives you capabilities such as compute shaders, stencil textures, and texture gather for your games. Android Extension Pack (AEP) is a new set of extensions to OpenGL ES that bring desktop-class graphics to Android. Games will be able to take advantage of tessellation and geometry shaders, and use ASTC texture compression across multiple GPU technologies.
- Android Runtime (ART) — The L Developer Preview introduces the Android Runtime (ART) as the system default. ART offers ahead-of-time (AOT) compilation, more efficient garbage collection, and improved development and debugging features. In many cases it improves performance of the device with no action required by the developer.
- 64-bit support — The L Developer Preview adds support for 64-bit ABIs, for additional address space and improved performance with certain compute workloads. Apps written in the Java language can run immediately on 64-bit architectures with no modifications required. To support apps using native code, we’re also releasing an updated NDK that includes 64-bit support.
Android Design Lead Matias Duarte, talked about some of the changes that can be expected in the user interface, such as Polymer, which offers new typography, grid structure, and colors by default. L also brings noticeable new animations throughout Android. One of the most noticeable is a ripple effect in messaging and phone dialers.
You can also expect to see some changes in animation. In describing some of the animation modifications, Android’s Director of Engineering, David Burke mentioned that "We wanted to give you early access so you could bring Material to your apps." There are also a lot of new animation features with respect to Web browsing.
Currently, Android’s runtime is Dalvik, as mentioned in the highlights this will be replaced by ART. Dalvik is the process virtual machine (VM) in Google's Android operating system. It is the software that runs the apps on Android devices. BlackBerry 10 or Windows running Android apps are implemented by Dalvik.
Dalvik used just-in-time (JIT) compilation. This means that an app needed to be compiled every time it was run. ART switches to Ahead of Time (AOT) compilation, which means the app is now compiled once. With ART, Google ships uncompiled code through the Play Store and compiles it at the time of installation. ART uses AOT compiling, but it is compiled on the device. The bottom line is that ART should be a lot faster than Dalvik, something that developers should find very appealing.
During last night’s Google I/O event, in addition to the discussion of the release of L, certain updates to Google Play Services 5.0 were also announced. Some of the highlights of the latest version include;
- Services for Android wearables — Your apps can more easily communicate and sync with code running on Android wearables through an automatically synchronized, persistent data store and a reliable messaging interface.
- Play Games services — Build a great gaming experience with Quests, which allow event-based challenges for players to complete for rewards, Saved Games (a snapshot API allow synchronization of game data along with a cover-image and description), and Game Profile (providing experience points for players).
- App Indexing API — Surface deep content in your native mobile applications on Google search and drive additional user engagement.
- Google Cast — Use media tracks to enable closed-caption support for Chromecast.
- Drive — Sort query results, create offline folders, and select any mime type in the file picker by default.
- Wallet — Build a "Save to Wallet" button for offers directly into your app; use geo-fenced in-store notifications to prompt the user to show and scan digital cards. Split tender allows payment to be split between Wallet Balance and a credit/debit card in Google Wallet.
- Analytics — Get insights into the full user journey and understand how different user acquisition campaigns are performing with Enhanced Ecommerce, letting you measure product impressions, product clicks, and more.
- Mobile Ads — Use improved in-app purchase ads and integrations for the Play store in-app purchase API client.
- Dynamic Security Provider — Offers an alternative to the platform's secure networking APIs that can be updated more frequently, for faster delivery of security patches.
Edited by
Maurice Nagle