Android Lollipop: Designing with Material Design and Transitioning to ART Runtime

Android 5.0 updates. We analyze shadow elevations, vector animations, and Ahead-of-Time ART compilation.

VP
SHIVAM ITCS
·2 June 2014·10 min read·1 views

The Modern Android Redesign

In June 2014, Google unveiled Android 5.0 Lollipop. This release introduces a major visual redesign called Material Design, bringing paper-like surfaces and realistic shadow physics to screen elements.

Behind the scenes, Google is replacing the Android Java VM to improve application execution speeds.

ART Paradigm: Compile applications to machine code on installation. Avoid runtime optimization pauses to stabilize framerates.

The Dalvik to ART VM Transition

Lollipop replaces the legacy Dalvik VM with the Android Runtime (ART):

  • Dalvik VM: Relied on Just-In-Time (JIT) compilation, compiling Java bytecode to machine code dynamically while the app executes, causing micro-stutters.
  • ART VM: Uses Ahead-of-Time (AOT) compilation. When an application is installed, the system compiles the code binaries completely, running applications faster.
Virtual MachineCompilation TypeMemory OverheadApp Launch Speed
Dalvik VMJust-In-Time (JIT)Minimal installation footprint.Slower (runtime overhead).
ART VMAhead-of-Time (AOT)Larger installation footprint.Fast, native execution.

Material Design Shadow Elevations

Material Design uses a logical Z-axis coordinate to calculate realistic shadow depths:

xmlcode
<!-- Elevation configuration in Android Lollipop layouts -->
<Button
    android:id="@+id/btn_action"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Action"
    android:elevation="4dp" />

By combining hardware compilation with flat, physical design layouts, Android Lollipop improves the mobile product experience.

VP
Vijay Paliwal
Founder, SHIVAM ITCS · 18+ years enterprise & AI engineering
MCA · Ex-HiveGPT USA · Ex-Social27 Seattle
Android Lollipop: Designing with Material Design and Transitioning to ART Runtime | SHIVAM ITCS Blog | SHIVAM ITCS