SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
GOOGLE’S
OBSESSION WITH
SWEET TREATS



Faisal Abid   @faisalabid
              www.faisalabid.com
ICECREAM
SANDWICH
AND OTHER
DELICIOUS THINGS




Faisal Abid   @faisalabid
              www.faisalabid.com
WHO AM I?

• Software Developer working with Android
	 since the beta days
• Previously a Flex/Flash and ColdFusion developer.
• Co-Author Flex 3 in Action
• Currently apart from Android, heavily involved in 		
	 the Node.js and CoffeeScript community.
• Entrepreneur, Author, Teacher & Developer




Faisal Abid   @faisalabid
              www.faisalabid.com
ABOUT THIS TALK

What’s cool in 3.0/4.0
• Design Guidelines
• Animation Framework
• ActionBar Framework
• Fragments
• New Views
• Dialog Fragments

The Future of Android Development


Faisal Abid   @faisalabid
              www.faisalabid.com
DESIGN GUIDELINES

Previous versions of Android looked like crap. There I said it.
• ICS looks beautiful.
• ICS focuses on simplicity
• Bye bye menu button
• Bye bye hardware keys

ICS is designed for multiple screens.
Flat look. Easy to scale.




Faisal Abid   @faisalabid
              www.faisalabid.com
ACTIONBAR




Faisal Abid   @faisalabid
              www.faisalabid.com
➸ SWIPING                          (VIEW PAGER)
                          ➸




Faisal Abid   @faisalabid
              www.faisalabid.com
HOLO THEME




Faisal Abid   @faisalabid
              www.faisalabid.com
ANIMATION FRAMEWORK

• Previous versions of Android did not do animations well
• I hated the anim.xml files for simple animations
• With Honeycomb, Android introduced .animate()
	 on all views.




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
OBJECTANIMATOR, VALUEANIMATOR

• .animate() is powerful, but ObjectAnimator and
	 ValueAnimator are even more powerful.
• ObjectAnimator allows you to animate any property
	 of an object

   objectAnimatorNext = ObjectAnimator.ofFloat(this, “translationX”, 100f);
   objectAnimatorNext.setInterpolator(new DecelerateInterpolator());
   objectAnimatorNext.start();




Faisal Abid   @faisalabid
              www.faisalabid.com
QUICK WALKTHROUGH

PARALLAX
Parallax is cool, everyone wants to do it
and wants to know how.


Lets walk through how to do a simple parallax
effect using ObjectAnimator




Faisal Abid   @faisalabid
              www.faisalabid.com
SUMMARY HOW IT WORKS

• Foreground has to be faster.
• ObjectAnimator animates it forward and backwards
• Check if Animation already running to prevent it going nuts
• To make it usable in the real world you will need to fix the
	 edges of the imageview so that it doesn’t overflow.




Faisal Abid   @faisalabid
              www.faisalabid.com
VALUEANIMATOR

• Not all views have all the properties ready to be animated 		
	 using .animate()
• ValueAnimator will handle the rest for you.
• Animates the values from x to y.




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
VALUEANIMATOR

That’s cool but how do I animate it?
• So we ran it. But.. It didn’t do anything. It knows nothing of 	
	 the progressbar.
• Enter onAnimateUpdateListener




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
ACTIONBAR

• Bigger screens, thumb easier to click on top.
• Android introduced ActionBar in Honeycomb,
	 but ICS makes it much more cooler.
• ActionBar can support multiple screen resolution
	 with ease.




Faisal Abid   @faisalabid
              www.faisalabid.com
HOW TO USE ACTIONBAR

• ActionBar a = getActionBar()
• Actionbar uses the menuInflator and the
	 onCreateOptionsMenu
• Why? To support backwards compatibility.


Do I like it? No.




Faisal Abid   @faisalabid
              www.faisalabid.com
IFROOM | WITHTEXT

• One thing I like very much is the IfRoom|WithText
	 parameters.
• If the screen is small, they will just appear in the
	 overflow icon for GalaxyNexus+ or in the menu on 			
	 phones with hardware keys.




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
FRAGMENTS

• Android is fragmented, so they introduced Fragments. Heh heh.
• Support large and small screen layouts.




Faisal Abid   @faisalabid
              www.faisalabid.com
ON A SINGLE SCREEN




Faisal Abid   @faisalabid
              www.faisalabid.com
ON A TABLET




Faisal Abid   @faisalabid
              www.faisalabid.com
GRIDLAYOUT AND SPACE

• ICS introduces two new Views.
• GridLayout and Space
• Gridlayout lets you get an amazing layout structure while 			
	 space, well spaces out your layout




Faisal Abid   @faisalabid
              www.faisalabid.com
GRIDLAYOUT

• Previous, we used LinearLayout, FrameLayout and
	 a combination of other Layouts to get a pretty cool 	
	 UI done.
• With GridLayout, we can achieve the same without 		
	 multiple views
• Less views = faster load times.




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
DIALOG FRAGMENT

• Recently introduced
• DialogFragment gets rid of the ugly onCreateDialog(int)
	 No more case switching for no reason.
• Scales perfectly on all phone sizes
• Easy to use. You can pass listeners objects to the dialog
	 for notification results!




Faisal Abid   @faisalabid
              www.faisalabid.com
DEMO

Faisal Abid   @faisalabid
              www.faisalabid.com
FUTURE OF ANDROID

Im not a Google employee so I have no idea. But I can make
some educated guesses.


PROS                                  CONS
• Better API support for Cloud.       • More and More phones. Android is
• Siri altnerative with an open API   growing at a crazy rate. Which means
• More Focus on Gaming. Android       more trouble for developers to port on
Game Center? OpenFient Acquisition?   different phones.
• More options for TV development,    • Which means Bad android reviews and
Google Glasses Integration.           discouragement to develop further.
                                      • iPhone starts to look very promising in
                                      this scenario.



Faisal Abid   @faisalabid
              www.faisalabid.com
THANK YOU
ANY QUERIES?




Faisal Abid   @faisalabid
              www.faisalabid.com

Más contenido relacionado

Similar a Google's Obsession with Sweet Treats. What's new in ICS and the Future of Android

FITC 2012 Jellybean Tips and Tricks
FITC 2012 Jellybean Tips and TricksFITC 2012 Jellybean Tips and Tricks
FITC 2012 Jellybean Tips and TricksFaisal Abid
 
Advanced Android Design Implementation
Advanced Android Design ImplementationAdvanced Android Design Implementation
Advanced Android Design ImplementationTack Mobile
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentKarl Bunyan
 
Phonegap - An Introduction
Phonegap - An IntroductionPhonegap - An Introduction
Phonegap - An IntroductionTyler Johnston
 
Xamarin.iOS Presentation
Xamarin.iOS PresentationXamarin.iOS Presentation
Xamarin.iOS PresentationMichael Ridland
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildTerry Ryan
 
Mobilizing wordpress WordCamp Edmonton 2011
Mobilizing wordpress WordCamp Edmonton 2011Mobilizing wordpress WordCamp Edmonton 2011
Mobilizing wordpress WordCamp Edmonton 2011Curtis McHale
 
HTML5 Canvas Performance optimization
HTML5 Canvas Performance optimizationHTML5 Canvas Performance optimization
HTML5 Canvas Performance optimizationDavid Goemans
 
BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance
 BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance
BoosterMedia: Overcome the bottleneck of HTML5 mobile game performanceDevGAMM Conference
 
Kickstart android development with xamarin
Kickstart android development with xamarinKickstart android development with xamarin
Kickstart android development with xamarinFoyzul Karim
 
FITC Sneak Peek 2012
FITC Sneak Peek 2012FITC Sneak Peek 2012
FITC Sneak Peek 2012Faisal Abid
 
Html5 - the new kid on the block
Html5 - the new kid on the blockHtml5 - the new kid on the block
Html5 - the new kid on the blockMarian Borca
 
Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Jason Kneen
 
Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms Russ Fustino
 
How to deal with Fragmentation on Android
How to deal with Fragmentation on AndroidHow to deal with Fragmentation on Android
How to deal with Fragmentation on AndroidSittiphol Phanvilai
 
Mobilizing WordPress
Mobilizing WordPressMobilizing WordPress
Mobilizing WordPressCurtis McHale
 
Ionic intro + tips
Ionic intro + tipsIonic intro + tips
Ionic intro + tipsTony May
 
tvOS: An Introduction for iOS Developers
tvOS: An Introduction for iOS DeveloperstvOS: An Introduction for iOS Developers
tvOS: An Introduction for iOS DevelopersEric Hyche
 

Similar a Google's Obsession with Sweet Treats. What's new in ICS and the Future of Android (20)

FITC 2012 Jellybean Tips and Tricks
FITC 2012 Jellybean Tips and TricksFITC 2012 Jellybean Tips and Tricks
FITC 2012 Jellybean Tips and Tricks
 
Advanced Android Design Implementation
Advanced Android Design ImplementationAdvanced Android Design Implementation
Advanced Android Design Implementation
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & Development
 
Phonegap - An Introduction
Phonegap - An IntroductionPhonegap - An Introduction
Phonegap - An Introduction
 
Xamarin.iOS Presentation
Xamarin.iOS PresentationXamarin.iOS Presentation
Xamarin.iOS Presentation
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap Build
 
Mobilizing wordpress WordCamp Edmonton 2011
Mobilizing wordpress WordCamp Edmonton 2011Mobilizing wordpress WordCamp Edmonton 2011
Mobilizing wordpress WordCamp Edmonton 2011
 
HTML5 Canvas Performance optimization
HTML5 Canvas Performance optimizationHTML5 Canvas Performance optimization
HTML5 Canvas Performance optimization
 
BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance
 BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance
BoosterMedia: Overcome the bottleneck of HTML5 mobile game performance
 
Flutter by Shubham
Flutter by ShubhamFlutter by Shubham
Flutter by Shubham
 
Kickstart android development with xamarin
Kickstart android development with xamarinKickstart android development with xamarin
Kickstart android development with xamarin
 
FITC Sneak Peek 2012
FITC Sneak Peek 2012FITC Sneak Peek 2012
FITC Sneak Peek 2012
 
Html5 - the new kid on the block
Html5 - the new kid on the blockHtml5 - the new kid on the block
Html5 - the new kid on the block
 
Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014
 
Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms
 
How to deal with Fragmentation on Android
How to deal with Fragmentation on AndroidHow to deal with Fragmentation on Android
How to deal with Fragmentation on Android
 
Titanium Alloy Tutorial
Titanium Alloy TutorialTitanium Alloy Tutorial
Titanium Alloy Tutorial
 
Mobilizing WordPress
Mobilizing WordPressMobilizing WordPress
Mobilizing WordPress
 
Ionic intro + tips
Ionic intro + tipsIonic intro + tips
Ionic intro + tips
 
tvOS: An Introduction for iOS Developers
tvOS: An Introduction for iOS DeveloperstvOS: An Introduction for iOS Developers
tvOS: An Introduction for iOS Developers
 

Último

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Último (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Google's Obsession with Sweet Treats. What's new in ICS and the Future of Android

  • 1. GOOGLE’S OBSESSION WITH SWEET TREATS Faisal Abid @faisalabid www.faisalabid.com
  • 2. ICECREAM SANDWICH AND OTHER DELICIOUS THINGS Faisal Abid @faisalabid www.faisalabid.com
  • 3. WHO AM I? • Software Developer working with Android since the beta days • Previously a Flex/Flash and ColdFusion developer. • Co-Author Flex 3 in Action • Currently apart from Android, heavily involved in the Node.js and CoffeeScript community. • Entrepreneur, Author, Teacher & Developer Faisal Abid @faisalabid www.faisalabid.com
  • 4. ABOUT THIS TALK What’s cool in 3.0/4.0 • Design Guidelines • Animation Framework • ActionBar Framework • Fragments • New Views • Dialog Fragments The Future of Android Development Faisal Abid @faisalabid www.faisalabid.com
  • 5. DESIGN GUIDELINES Previous versions of Android looked like crap. There I said it. • ICS looks beautiful. • ICS focuses on simplicity • Bye bye menu button • Bye bye hardware keys ICS is designed for multiple screens. Flat look. Easy to scale. Faisal Abid @faisalabid www.faisalabid.com
  • 6. ACTIONBAR Faisal Abid @faisalabid www.faisalabid.com
  • 7. ➸ SWIPING (VIEW PAGER) ➸ Faisal Abid @faisalabid www.faisalabid.com
  • 8. HOLO THEME Faisal Abid @faisalabid www.faisalabid.com
  • 9. ANIMATION FRAMEWORK • Previous versions of Android did not do animations well • I hated the anim.xml files for simple animations • With Honeycomb, Android introduced .animate() on all views. Faisal Abid @faisalabid www.faisalabid.com
  • 10. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 11. OBJECTANIMATOR, VALUEANIMATOR • .animate() is powerful, but ObjectAnimator and ValueAnimator are even more powerful. • ObjectAnimator allows you to animate any property of an object objectAnimatorNext = ObjectAnimator.ofFloat(this, “translationX”, 100f); objectAnimatorNext.setInterpolator(new DecelerateInterpolator()); objectAnimatorNext.start(); Faisal Abid @faisalabid www.faisalabid.com
  • 12. QUICK WALKTHROUGH PARALLAX Parallax is cool, everyone wants to do it and wants to know how. Lets walk through how to do a simple parallax effect using ObjectAnimator Faisal Abid @faisalabid www.faisalabid.com
  • 13. SUMMARY HOW IT WORKS • Foreground has to be faster. • ObjectAnimator animates it forward and backwards • Check if Animation already running to prevent it going nuts • To make it usable in the real world you will need to fix the edges of the imageview so that it doesn’t overflow. Faisal Abid @faisalabid www.faisalabid.com
  • 14. VALUEANIMATOR • Not all views have all the properties ready to be animated using .animate() • ValueAnimator will handle the rest for you. • Animates the values from x to y. Faisal Abid @faisalabid www.faisalabid.com
  • 15. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 16. VALUEANIMATOR That’s cool but how do I animate it? • So we ran it. But.. It didn’t do anything. It knows nothing of the progressbar. • Enter onAnimateUpdateListener Faisal Abid @faisalabid www.faisalabid.com
  • 17. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 18. ACTIONBAR • Bigger screens, thumb easier to click on top. • Android introduced ActionBar in Honeycomb, but ICS makes it much more cooler. • ActionBar can support multiple screen resolution with ease. Faisal Abid @faisalabid www.faisalabid.com
  • 19. HOW TO USE ACTIONBAR • ActionBar a = getActionBar() • Actionbar uses the menuInflator and the onCreateOptionsMenu • Why? To support backwards compatibility. Do I like it? No. Faisal Abid @faisalabid www.faisalabid.com
  • 20. IFROOM | WITHTEXT • One thing I like very much is the IfRoom|WithText parameters. • If the screen is small, they will just appear in the overflow icon for GalaxyNexus+ or in the menu on phones with hardware keys. Faisal Abid @faisalabid www.faisalabid.com
  • 21. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 22. FRAGMENTS • Android is fragmented, so they introduced Fragments. Heh heh. • Support large and small screen layouts. Faisal Abid @faisalabid www.faisalabid.com
  • 23. ON A SINGLE SCREEN Faisal Abid @faisalabid www.faisalabid.com
  • 24. ON A TABLET Faisal Abid @faisalabid www.faisalabid.com
  • 25. GRIDLAYOUT AND SPACE • ICS introduces two new Views. • GridLayout and Space • Gridlayout lets you get an amazing layout structure while space, well spaces out your layout Faisal Abid @faisalabid www.faisalabid.com
  • 26. GRIDLAYOUT • Previous, we used LinearLayout, FrameLayout and a combination of other Layouts to get a pretty cool UI done. • With GridLayout, we can achieve the same without multiple views • Less views = faster load times. Faisal Abid @faisalabid www.faisalabid.com
  • 27. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 28. DIALOG FRAGMENT • Recently introduced • DialogFragment gets rid of the ugly onCreateDialog(int) No more case switching for no reason. • Scales perfectly on all phone sizes • Easy to use. You can pass listeners objects to the dialog for notification results! Faisal Abid @faisalabid www.faisalabid.com
  • 29. DEMO Faisal Abid @faisalabid www.faisalabid.com
  • 30. FUTURE OF ANDROID Im not a Google employee so I have no idea. But I can make some educated guesses. PROS CONS • Better API support for Cloud. • More and More phones. Android is • Siri altnerative with an open API growing at a crazy rate. Which means • More Focus on Gaming. Android more trouble for developers to port on Game Center? OpenFient Acquisition? different phones. • More options for TV development, • Which means Bad android reviews and Google Glasses Integration. discouragement to develop further. • iPhone starts to look very promising in this scenario. Faisal Abid @faisalabid www.faisalabid.com
  • 31. THANK YOU ANY QUERIES? Faisal Abid @faisalabid www.faisalabid.com