google i/o 2014 recap
DESCRIPTION
Recap of some of the features highlighted at Google I/O 2014. Includes RecyclerView, Android Work, Render Thread, Animations, Shadows and Material Design coverage. Also outlines Gradle updates and the latest additions to Android Studio.TRANSCRIPT
Google I/O 2014 RecapTrey Robinson
Overview○ Android Studio○ Gradle○ Android Work○ ART Updates○ Project Volta○ Material Design○ New Roboto○ Animation○ Shadows○ RecyclerView○ CardView○ Notifications
Android Studio● Now in BETA!● Support for Wear, Auto and TV● Improved Eclipse Migration● Improved Project Flow
○ Currently Available on Canary Channel (8.4)
● Start Using Android Studio○ it is still Beta but ...○ Be Prepared to Switch
Gradle● More Stable
○ No more breaking builds on Studio updates. ● Variants, Flavors, APK Splits
○ Debug, Release, Test, Production, etc.○ Paid vs Free○ Split APKs (x86, ARM, etc)○ Device Specific
Android Work● Unified Interaction Model● New badge for apps administered by IT● BYOD Devices - IT Work Profiles● Company Devices - IT has full control● New APIs ● Large Scale App Deployment via Play● Uses Samsung KNOX
Goodbye Dalvik - Hello ART● Why ART?
○ Hardware outpacing software■ Multiprocessor■ 4x more RAM■ 60x more flash memory
○ Dalvik was targeted for ARM architectures
ART Features● No changes for most developers. ● 3 main compilers:
○ L compiler○ JNI Compiler○ DEX to DEX optimizer
● Ahead of time compilation● Improved GC● 64 Bit Support● Greatly Improved Alloc
Project Volta● Job Scheduler
○ Defer and Schedule CPU/Battery intensive operations○ Set Criteria:
■ Network Type (Metered/Unmetered)■ Battery State (Device Plugged In?)■ Idle Mode■ Retry Criteria■ Deadlines
○ Examples:■ Database Ops■ Backups
Volta - Battery Stats● New Battery Stats Utility
○ Partial Wakelock Time○ Run time○ Mobile Data Used○ Signal levels○ Mobile Radio Activity○ Signal Scanning Time
Volta - Battery Historian● Visual Display
○ Top:■ Screen On Time■ Network State■ User State (in phone
call?)
Material Design● New Theme (Theme.Material)● Improved Animation APIs
○ Ripples○ Activity Transitions
● Depth and Shadows● Many New APIs
○ RecyclerView!○ CardView
● New Support Library
Material Theme
Material Changes● Theme Colors● Tint colors for most UI elements
○ NO MORE DRAWABLES FOR ACTIONBAR COLOR CHANGES!!1!!!111!!1!!!!!!
● Define Bitmaps as an alpha mask and tint them
● Color Extraction ○ Palette API
New Roboto Font
Animations - (L Only)● New Thread Handling● RippleDrawable● StateAnimationDrawable● Reveal● Custom Interpolation● Animation Curves● Activity Transitions
Shadows - (L Only)● Realtime Area Lightsource● Elevates views above 2D view hierarchy● Draws outside of bounds● Animation of Z Translation
Card View● Standard Look● Real Shadows on L● Fake Shadows pre-L
RecyclerView● Replaces ListView● In Support Library● Built in Animation Support
○ Addition and Removal● ViewHolder is Now Part of the API● Grid/List/Custom layout support PSA: If you are an Android “developer” and you do not know what a ViewHolder is, then you should probably look it up.
Ex. A
RecyclerView - Cont.
Notifications● Visual Changes● Expanded Layouts● Notification On Lock Screen● Heads-up Presentation Format● Cloud-sync● Media Controls
Notification - Priority● Determine Display Order● High/Max for Heads Up● Heads Up display over apps
Notifications - Lock Screen● Secure vs Insecure Lockscreen● User controls what is displayed
○ Public○ Private○ Secret
Compatibility - Support Lib● Currently NO AppCompat Material Theme● RecyclerView● CardView● Pallette● RoundedBitmapDrawable● ViewPropertyAnimator● NotificationCompat
Running L● Nexus 5 / 7 Images Available● L Preview SDK Available via SDK Manager● Requires JDK 7● Issues with Support Library● Check out the API Demos
Questions?