Tuesday, 4 November 2014

Android Lollipop : A Developer's Perspective

We have been hearing a lot about Android Lollipop these days. Google claims it to be one of their most ambitious release . The developer preview has been in the market for some time and recently Google has also announced about the general availability of Android L, so we thought of sharing a quick preview for developers about this latest iteration in the Android world.
From our experience it looks like that with this set of API Google wants to provide a seamless experience across devices  ( no matter whether it’s a phone, tablet , a wearable or a Television). Some of the interesting features that we would like to mention about Lollipop are:
a.       Material Design : Android 5.0  brings Material Design to Android and also provides a toolkit to bring in the latest UI Patterns in your code. Material Design is based upon 3 principles:
        i.      Material is a metaphor:  The design uses  attributes of real material (tactile attributes, effect of light, motion etc)
      ii.      Bold , Graphic , Intentional: Using the foundational elements of Print Design
    iii.      Motion Provides a Meaning: Primary user actions are inflection points that initiate motion, transforming the whole design
Those who are new to Material Design can refer to the following link for details about Material  Design
Also the built in transitions and the ability to use shared visual elements takes the user experience to another level
b.      More Juice: Android 5.0 provides a faster, smoother and more powerful computing experience. Android now runs exclusively on the new ART runtime, built from the ground up to support a mix of ahead-of-time (AOT), just-in-time (JIT), and interpreted code. It’s supported on ARM, x86, and MIPS architectures and is fully 64-bit compatible.

Android 5.0 also  offers enhanced A/V sync. The audio and graphics pipelines have been developed for more accurate timestamps, thus making video and games run much smoother.

c.       Enhanced Notifications:  In Android Lollipop the Notifications are more visible and a lot configurable. Different notification details may be made available on the lock screen. Then amount of content ie. None, some or All can be made available on the lock screen as configured  by the user.  In coming calls and other key notifications appear as head up notifications and can be responded without making the user leave current app. A fair amount of meta data can also be added to notifications as developers can now collect associated contacts, category and priority. The media notifications is also juiced up and supports upto 6 action buttons also  custom controls like “Thumbs up” are now available

d.      The Big Screen Experience: For developers targeting the big screen, Android 5.0 has something stored in the kitty. Android TV provides a TV platform to maximize the big screen experience of the app and allows user to easily discover content  along with providing voice based search and recommendations. Developers can now also support game controllers and other input devices. Leanback UI framework provided with android  can be leveraged to build cinematic 10-foot UIs for TVs. The TV Input Framework  provides access to a wide range of live TV input sources and mingles them with in a single user interface for users to  relish the content.

e.      The redesigned “Recents” space: Android 5.0 introduces a redesigned Overview space (formerly called Recents) that’s more flexible and useful for multitasking than available in the predecessors. New APIs allow developers to show different activities in an app as individual documents alongside other recent screens. The developers can also leverage the concurrent documents to provide users instant access to more of content or services. 


f.        Next Generation Connectivity :   The connectivity has also got a boost in Android Lollipop , three key areas where we see significant improvements are:
              i. Bluetooth Low Energy (BLE):  Supports concurrent operation allowing both central and peripheral modes
                   ii.  Multi Networking: Supports querying of network for features
                 iii.  NFC API: Allows apps to register an NFC app Id dynamically and card emulation

g.        Godly Graphics:  High performance 2D and 3D graphics are now possible by support of Khronos OpenGL ES 3.1. Android 5.0 also introduces the Android Extension Pack (AEP), a set of OpenGL ES extensions that give you access to features like tessellation shaders, geometry shaders, ASTC texture compression, per-sample interpolation and shading, and other advanced rendering capabilities

h.      Support for sensors:  Tilt Detector for activity recognition, Hear Rate Sensor for analyzing Hear rate and various Interaction Composite Sensors for wake up, glance and pick up gestures are now supported


i.    Chromium Webview:  Chromium for Webview  based on Chromium M37 adds support for WebRTC , WebAudio and WebGL. Native support for all Web Components is also available

j.    Efficient Battery Management: With the newly introduced  job scheduling APIs developers can optimize battery life by deferring jobs for the system and schedule them to run at a later time or under specified conditions, such as when the device is charging or connected to Wi-Fi.


k.  Capture and Share Screen: Android 5.0 lets you add screen capturing and screen sharing capabilities to your app. With user permission, you can capture non-secure video from the display and deliver it over the network if you choose.

l.   Enhanced Sounds: A new audio-capture design offers low-latency audio input. The new design include a fast capture thread that never blocks except during a read; fast track capture clients at native sample rate, channel count, and bit depth; and normal capture clients offer resampling, up/down channel mix, and up/down bit depth. Multi-channel audio stream mixing allows professional audio apps to mix up to eight channels including 5.1 and 7.1 channels.

Apps can expose their media content and browse media from other apps, then request playback. Content is exposed through a queryable interface and does not need to reside on the device.

Apps have finer-grain control over text-to-speech synthesis through voice profiles that are associated with specific locales, quality and latency rating. New APIs also improve support for synthesis error checking, network synthesis, language discovery, and network fallback.

Android now includes support for standard USB audio peripherals, allowing users to connect USB headsets, speakers, microphones, or other high performance digital peripherals. Android 5.0 Lollipop also adds support for Opus audio codecs. There also are new MediaSession APIs for controlling media playback to make it easier to provide consistent media controls across screens and other controllers.

m.    Lights, Camera, Action

Android 5.0 introduces all new camera APIs that provide the ability to capture raw formats such as YUV and Bayer RAW, and control parameters such as exposure time, ISO sensitivity, and frame duration on a per-frame basis. With the new fully-synchronized camera pipeline developers can capture uncompressed full-resolution YUV images at 30 FPS on supported devices.

Along with images, there is the option to capture metadata like noise models and optical information from the camera. Apps sending video streams over the network can now take advantage of H.265 High Efficiency Video Coding (HEVC) for optimized encoding and decoding of video data.

Android 5.0 also adds support for multimedia tunneling to provide the best experience for ultra-high definition (4K) content and the ability to play compressed audio and video data together.

Reference: http://developer.android.com/about/versions/lollipop.html

For experiencing and discussing awesome apps  please do reach us(Recrosoft Technologies Pvt. Ltd. ) at  http://www.recrosoft.com





No comments:

Post a Comment