Presentation on theme: "Android Lollipop Android 5.0 to the world on 12 November 2014 Significant update for the Android platform This is after 4.4.2 version Updates such as ART."— Presentation transcript:
Android Lollipop Android 5.0 to the world on 12 November 2014 Significant update for the Android platform This is after version Updates such as ART and on-screen notifications will make an immediate impact. Redesigned GUI built around a design language referred to as "material design".design languagematerial design
Android Lollipop Battery Notifications Multitasking Runtime and ART Android TV Graphics Android Extension Pack Chrome View Media Browsing Media Playback Control Media Browsing Media Playback Control New Sensors Managed Provisioning Device Owner Screen Pinning Screen Sharing Camera Bluetooth Low Energy NFC Multiple Network Connections Printing Framework Input Method Editors
Features (battery): Battery Improving battery life. JobScheduler API allows you to run jobs asynchronously at a later time or under particular conditions. JobInfo objects can be used to define the conditions a scheduled job will run under. Developer Tools A new ADB command dumpsys batterystats generate statistical data about battery usage on a device. $adb shell dumpsys batterystats --charged
Features (Notifications): Notifications Can be displayed on the lock screen. Developers can specify the amount of information displayed within a notification (using setVisibility), which accepts the following values: a)VISIBILITY_PRIVATE: shows basic information, such as the notification's icon, but hides the notification's content b)VISIBILITY_PUBLIC: shows the notification's content c)VISIBILITY_SECRET: shows nothing, excluding even the notification's icon Metadata can now be added to notifications to allow for categories and priority, and to collect additional contacts. Key notifications, such as incoming calls, will appear in a heads-up notification window, which will float at the top of the current app until the user acknowledges or dismisses the notification.
Features (Multitasking): Multitasking – New APIs that improve multitasking options on Android, where you can now have your activities treated as tasks and be shown in their own window. – For example, a web browser app could be set so that each tab has its own window. – If you have a website, you can add to display the given color as the header for your websiteIf you have a website, you can add to your header section to have overview display the given color as the header for your website.
Features (Dalvik): Runtime on Dalvik – Previous versions of Android have all used Dalvik as the process virtual machine. Applications are commonly written in Java, which is then compiled to bytecode. This is then translated to Dalvik bytecode and stored in.dex and.odex files, for Dalvik to then process. – This is a very a basic explanation of what the runtime is doing and hopefully conveys its importance. Applications run on the process virtual machine so its performance determines the overall performance of the app and is a bottleneck. – Dalvik uses JIT (Just In Time) compilation, meaning that it only runs the application at the moment it is needed.
Features (Runtime and ART): vs Runtime and ART – ART, on the other hand, uses an AOT (Ahead Of Time) compilation to compile the bytecode. When an application is installed, it's compiled by ART's dex2oat utility, which creates ELF executables instead of.odex files. From then on, the application is executed from the already compiled ELF executable. – That's a lot of saved compiling at the expense of longer application install times and some extra disk space. – With the addition of improved garbage collection (GC), ART outperforms Dalvik in nearly every way, making for a sharper and more fluid Android experience.
Features (Android TV): Android TV – To help bring your app to large screen displays, Lollipop introduces the – Leanback UI and the – Android TV Input Framework (TIF). The Leanback library provides user interface widgets for TV apps. TIF is designed to allow TV apps to handle video streams from sources such as HDMI inputs, TV tuners, and IPTV receivers.Leanback
Features (Graphics): Graphics Khronos OpenGL ES 3.1 has been added. Key features include: compute shaders separate shader objects shading language improvements extensions for advanced blend modes and debugging indirect draw commands multisample and stencil textures Android 5.0 remains backwards compatible with OpenGL ES 2.0 and 3.0.
Features (Android Extension Pack (AEP): Android Extension Pack (AEP) – To supplement OpenGL ES 3.1, a set of OpenGL ES extensions have been added that allow for the following: – guaranteed fragment shader support for shader storage buffers, images, and atomics (this feature is optional in OpenGL ES 3.1) – different blend modes for each color attachment in a frame buffer – tessellation and geometry shaders – ASTC (LDR) texture compression format – per-sample interpolation and shading
Features (Chrome View): Chrome View – A new version of Chromium for Web View, based on the Chromium m37 release that adds support for WebAudio, WebRTC, and WebGL. – Native support for Web Components is also included in the update and will allow for use of Polymer and its Material Design elements without requiring polyfills.Polymer – Chromium is now updatable from the Play Store so new APIs and bug fixes will be available immediately and will no longer require an update of the Android operating system.
Features (Media Browsing ): Media Browsing The new android.media.browse API allows apps to browse the media content library of other apps. The MediaBrowserService class is used to expose media in an application, while the MediaBrowser class is used to interact with a media browser service can then be used to send commands to a MediaSession.
Features (Media Playback Control): Media Playback Control – 2 new classes have been introduced to make playback control simpler to manage across different UIs and services. – MediaSession replaces RemoteControlClient. It provides a set of callback methods for use in transport controls and media buttons. – MediaController can be used to create a custom media controller app, which can then be used to send commands to a MediaSession.
Features (New Sensors): New Sensors Two new sensors have been introduced: – Tilt Detector: improves activity recognition – Heart Rate Sensor: capable of reporting the heart rate of the user touching the device Both of these sensors require supported hardware.
Features (Managed Provisioning): Managed Provisioning: Device administrators can use a managed provisioning service to add apps to a separate managed profile. If there's an existing personal account on a device that has been provisioned, the managed profile apps will appear alongside the existing applications.
Features (Device Owner): Device Owner A device owner is a specialized type of device administrator that can create and remove secondary users and configure global settings, essentially giving Android a traditional administrator and user account system.
Features (Screen Pinning): Screen Pinning Screen pinning is a new feature that is comparable to kiosk mode on iOS. Screen pinning includes the following features: The status bar is blank. Other apps cannot launch new activities. User notifications and status information are hidden. The current app can create new activities as long as no new tasks are created. Screen pinning can be activated manually via Settings > Security > Screen Pinning. It can also be activated programmatically. The startLockTask method can be called from your app to activate screen pinning. If the app is not from a device owner, a confirmation prompt will be shown. The setLockTaskPackages method can be called by an owner app and will avoid the confirmation prompt. To deactivate screen pinning, you need to call stopLockTask if it was initiated by a device owner app. If it was activated by a non-device owner, the user can exit screen pinning mode by holding both the back and recent buttons.
Features (Continue): Screen Sharing Screen capturing is now possible through the new android.media.projection APIs. The create VirtualDisplay method allows the calling app to capture the screen into a surface object, which can then be sent across the network. The API can only capture non-secure content and does not include audio.
Features (Continue): Camera RAW image capturing has finally arrived on Android, thanks to the new – android.hardware.camera2 API
Features (Continue): Bluetooth Low Energy Android devices can now act as Bluetooth LE peripherals. Apps can make use of this to make their presence known to nearby devices. With the newandroid.bluetooth.le APIs, you can enable your apps to connect to nearby Bluetooth devices, broadcast advertisements, and scan for responses. These new features also come with a new manifest permission, BLUETOOTH_ADMIN. These APIs will be extremely useful when working with wearable devices, health and fitness apps, and monitoring apps. All of these are predicted growth areas for Android in the near future.
Features (NFC): NFC NFC has been improved in the several ways: Android Beam has an option in the share menu. invokeBeam can be used to initiate the sharing of data (i.e. no longer have to physically bump devices). registerAidsForService and setPreferredService have been added to aid the development of payment apps.
Features (Multiple Network Connections): Multiple Network Connections New APIs allow for apps to query networks for available features, such as whether the network is either: cellular, metered Wi-Fi
Features (Printing FMW): Printing Framework Bitmap images can now be rendered from PDF document pages, using the newPdfRendered class.
Features (IME): Input Method Editors (IME) – Can now cycle through different IMEs available to the platform. – This is accomplished by using the, shouldOffetToNextInputMethod method.
Material Design Material Design is a set of guidelines relating to visual design, content motion, and user interaction. The guidelines are intended to go beyond Android and are designed for a wide array of devices and platforms. Polymer is a notable example of the cross- platform nature of Material Design, with Google creating several Material Design web elements to aid in construction of websites/web apps with a Material Design theme.
Material Design New Widgets Lollipop introduced two new widgets: CardView: This widget allows for information to be grouped together in a consistent manner. The card itself can have its depth altered to promote or highlight it as needed. RecyclerView: This is a more advanced version of the ListView widget.
Material Design New Themes There are two new themes that make use of Material Design principles, Dark Material and Light Material. Both apply new user interface system widgets. System widgets are easy to customize and you can set their color palette. Several animations and transitions are also defaults of these themes, such as the ripple effect.
Material Design Depth and Shadow Depth can now be altered on Android views through the new Z property. Higher Z values cast larger shadows around the view, giving the appearance of increased elevation. This is a staple of the Material Design ethos where the goal is to create a textile appearance through the use of layers.
Material Design Animations Another staple of Material Design is animation. Touch feedback animations and a host of activity transitions all aid in creating a tactile and immersive experience. The goal is not to have information pop out or disappear. Every view/object should appear as a layer on a surface. When you look down at the desk, it’s not a flat view. The desk contains several layers, and objects have different depths and cast shadows on the layer beneath. If you need to see a page underneath another page, you must move the covering page out of the way. If you want to place your laptop on the desk, you need to slide the existing papers out of the way to make space. When you touch something on your desk, it moves, bends, vibrates, and shuffles.