SlideShare ist ein Scribd-Unternehmen logo
1 von 47
Downloaden Sie, um offline zu lesen
Excellence in the Android User
Experience
Roman Nurik
Roman Nurik
Android Developer Advocate
Google
@romannurik




I care about icons, and
I think you should too ;-)
Where does the
user experience
begin?
Hint:
It doesn’t
begin here.
More likely,
it starts
here:
Or sometimes here:
And where does
user experience
extend to?
App Usage      Reviews


    Recommendations


 Forums        Support
Agenda
1.  Making a great first impression
2.  Designing for ease of use
3.  UI design + dev tips
4.  New tools
5.  Continuing to impress the user
Making a great
first impression
You can start
setting appropriate expectations and
impressing the user
sooner than you think:


  Have a clean, beautiful and guideline-friendly icon
  Have a unique and appropriate listing title
  Have an honest and useful listing description
DO   DON’T
You don’t always have control over the
first impression.


  Press and word-of-mouth reviews
  User’s previous exposure to your brand
  Market ratings


Improving the quality of your app will help positively
influence these factors.
Once your app is installed,
get the user up and running
as quickly as possible.


  Don’t require a lengthy registration process
    –  Users hate typing on mobile devices


  Sync user data and context immediately
    –  Users shouldn’t have to recreate their desktop
       environment on their mobile phone
Your ‘home’ activity should be straightforward.




            It’s also an opportunity to
        show off available features, in a
highly aesthetic, consistent, yet brand-faithful way.
In some cases, your app
may call for a unique user
interface.

In these cases, consider
greeting the user and
educating them on the UI.

Make them feel comfortable
with your app.


Example:
Winamp for Android
Greeting the user with
a one-time tutorial
screen can also
inform them about app
features like widgets,
live wallpapers, or
global search
Designing for
ease of use
Clarity begets ease of use.


An ideal design process:
1.  Lay out your information hierarchy
    and data model
2.  Choose a primary UI navigation pattern
3.  Sketch or otherwise prototype your UI
DO                     DON’T
  Dashboard +              5+ tabs or bottom tabs
   Action bar
                            Navigation sections
  Top tabs (up to 4)        in options menu
  Sliding top tabs         On-screen back button
   (homogenous content)
Primary action bar
pattern




Alternative or
secondary
action bar
patterns
DO feel free to customize
the way tabs look
DON’T alter the back stack
if you’re using tabs
Scrollable tabs +
horizontal swiping
is best for
homogenous
content

Example:
News and Weather
(stock Android)
Prototyping tools and methods:


  Paper + pen
  Pencil for Firefox – more on this in a bit
  Adobe Fireworks – interactive prototypes
UI design + dev tips
      (abridged)
http://j.mp/androiddesigntips
  DON’T simply port your      DON’T use px units,
   UI from other platforms      use dp (sp for text)
  DON’T overuse modal         DON’T use small font
   progress &                   sizes
   confirmation dialogs


  DO make large,              DO support D-pad &
   obvious tap targets          trackball navigation
   (buttons, list items)
                               DO properly manage
  DO use proper margins        the activity stack
   and padding
                               DO properly handle
                                orientation changes
DO localize if you’re
available globally
DO work with visual and
interaction designer(s)
Drawable XML (no PNGs!)
PNGs, 9-patch PNGs,
optimized for multi. densities


Layout XML
optimized for
physical size and orientation


Styles and themes, etc.

Strings XML localized for your
target regions
foo.xml:


<selector>
    <item android:drawable="@drawable/foo_disabled"
          android:state_enabled="false" ... />
    <item android:drawable="@drawable/foo_pressed"
          android:state_pressed="true" ... />
    <item android:drawable="@drawable/foo_focused"
          android:state_focused="true" ... />
    <item android:drawable="@drawable/foo_default" /> 
</selector>
foo_default.png   foo_disabled.png foo_focused.png   foo_pressed.png




foo_default.png   foo_disabled.png foo_focused.png   foo_pressed.png
foo.9.png	




  Similar to CSS3 border-image	
  Border pixels indicate stretchable regions
  Make both -mdpi and -hdpi versions!
http://j.mp/androidiconguidelines
New tools
New Android UI Utilities
open source project:


  Prototyping stencils for Pencil
  Android Asset Studio
  Photoshop icon templates
http://j.mp/androiduiutils

http://j.mp/androidassetstudio
Continuing to
impress the user
http://j.mp/improvingappquality
Copyrights and Trademarks
  Android, Google are registered trademarks of
   Google Inc.
  All other trademarks and copyrights are the
   property of their respective owners.

Weitere ähnliche Inhalte

Was ist angesagt?

Lean prototyping for entrepreneurs
Lean prototyping for entrepreneursLean prototyping for entrepreneurs
Lean prototyping for entrepreneursAmir Khella
 
UX UI - Principles and Best Practices 2014-2015
UX UI - Principles and Best Practices 2014-2015UX UI - Principles and Best Practices 2014-2015
UX UI - Principles and Best Practices 2014-2015Harsh Wardhan Dave
 
UX/UI design process - Studio CreativeMe
UX/UI design process - Studio CreativeMeUX/UI design process - Studio CreativeMe
UX/UI design process - Studio CreativeMeMadhuri Garg
 
What have you learnt about technologies?
What have you learnt about technologies?What have you learnt about technologies?
What have you learnt about technologies?michellejackson4
 
What have you learnt about technologies from the
What have you learnt about technologies from theWhat have you learnt about technologies from the
What have you learnt about technologies from theJosh Mckay
 
Application GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperApplication GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperSamsung Open Source Group
 
UX Design: A Concept and Evolution
UX Design: A Concept and EvolutionUX Design: A Concept and Evolution
UX Design: A Concept and EvolutionAppsbee
 
I didn't know PowerPoint could do that
I didn't know PowerPoint could do thatI didn't know PowerPoint could do that
I didn't know PowerPoint could do thatAmey Holden
 
Mobile app development lesson 3
Mobile app development   lesson 3Mobile app development   lesson 3
Mobile app development lesson 3KerryJTurner
 
Mockdown @ MOB
Mockdown @ MOBMockdown @ MOB
Mockdown @ MOBbenbjohnson
 
Prototyping Apps for Real People, by Apple
Prototyping Apps for Real People, by ApplePrototyping Apps for Real People, by Apple
Prototyping Apps for Real People, by AppleFranco Cedillo
 
Engl313 project2 slidedoc3 kirchmeier spring 2020
Engl313 project2 slidedoc3 kirchmeier spring 2020Engl313 project2 slidedoc3 kirchmeier spring 2020
Engl313 project2 slidedoc3 kirchmeier spring 2020Barbara Ann
 
UI Design 101: Day 02 of 07
UI Design 101: Day 02 of 07UI Design 101: Day 02 of 07
UI Design 101: Day 02 of 07Siegrid Agravante
 

Was ist angesagt? (16)

Lean prototyping for entrepreneurs
Lean prototyping for entrepreneursLean prototyping for entrepreneurs
Lean prototyping for entrepreneurs
 
UX UI - Principles and Best Practices 2014-2015
UX UI - Principles and Best Practices 2014-2015UX UI - Principles and Best Practices 2014-2015
UX UI - Principles and Best Practices 2014-2015
 
UX/UI design process - Studio CreativeMe
UX/UI design process - Studio CreativeMeUX/UI design process - Studio CreativeMe
UX/UI design process - Studio CreativeMe
 
What have you learnt about technologies?
What have you learnt about technologies?What have you learnt about technologies?
What have you learnt about technologies?
 
What have you learnt about technologies from the
What have you learnt about technologies from theWhat have you learnt about technologies from the
What have you learnt about technologies from the
 
Application GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperApplication GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit Developer
 
Blogs
BlogsBlogs
Blogs
 
UX Design: A Concept and Evolution
UX Design: A Concept and EvolutionUX Design: A Concept and Evolution
UX Design: A Concept and Evolution
 
Design for Mobile
Design for MobileDesign for Mobile
Design for Mobile
 
I didn't know PowerPoint could do that
I didn't know PowerPoint could do thatI didn't know PowerPoint could do that
I didn't know PowerPoint could do that
 
Mobile app development lesson 3
Mobile app development   lesson 3Mobile app development   lesson 3
Mobile app development lesson 3
 
Mockdown @ MOB
Mockdown @ MOBMockdown @ MOB
Mockdown @ MOB
 
Prototyping Apps for Real People, by Apple
Prototyping Apps for Real People, by ApplePrototyping Apps for Real People, by Apple
Prototyping Apps for Real People, by Apple
 
Engl313 project2 slidedoc3 kirchmeier spring 2020
Engl313 project2 slidedoc3 kirchmeier spring 2020Engl313 project2 slidedoc3 kirchmeier spring 2020
Engl313 project2 slidedoc3 kirchmeier spring 2020
 
MobileWebAppsDesign
MobileWebAppsDesignMobileWebAppsDesign
MobileWebAppsDesign
 
UI Design 101: Day 02 of 07
UI Design 101: Day 02 of 07UI Design 101: Day 02 of 07
UI Design 101: Day 02 of 07
 

Ähnlich wie Excellence in the Android User Experience

UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile appsIvano Malavolta
 
UI and UX for Mobile Developers
UI and UX for Mobile DevelopersUI and UX for Mobile Developers
UI and UX for Mobile DevelopersMohamed Nabil, MSc.
 
Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014MoodLabs
 
dmedia DP2 Interaction Design - Deliverable 2
dmedia DP2 Interaction Design - Deliverable 2dmedia DP2 Interaction Design - Deliverable 2
dmedia DP2 Interaction Design - Deliverable 2Stanford dmedia
 
Interactive cues in flat design
Interactive cues in flat designInteractive cues in flat design
Interactive cues in flat designMing-Liang Liu
 
UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile appsIvano Malavolta
 
10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App DevelopersJigyasa Makkar
 
Designing for Mobile: User-centering; How-tos; Trends
Designing for Mobile: User-centering; How-tos; TrendsDesigning for Mobile: User-centering; How-tos; Trends
Designing for Mobile: User-centering; How-tos; TrendsNetcetera
 
UX Prototyping and Personas 9 25-15
UX Prototyping and Personas 9 25-15UX Prototyping and Personas 9 25-15
UX Prototyping and Personas 9 25-15Shilpa Thanawala
 
Make better apps - Guide for Better UX
Make better apps - Guide for Better UXMake better apps - Guide for Better UX
Make better apps - Guide for Better UXDhaval Jani
 
Usability principles 1
Usability principles 1Usability principles 1
Usability principles 1Sameer Chavan
 
Web UI Design Patterns 2014
Web UI Design Patterns 2014Web UI Design Patterns 2014
Web UI Design Patterns 2014Lewis Lin 🦊
 
Application Design - Part 3
Application Design - Part 3Application Design - Part 3
Application Design - Part 3Kelley Howell
 
UX Prototyping and Personas 11-14-14
UX Prototyping and Personas 11-14-14UX Prototyping and Personas 11-14-14
UX Prototyping and Personas 11-14-14Shilpa Thanawala
 
Droidcon2014 - Android UX
Droidcon2014 - Android UXDroidcon2014 - Android UX
Droidcon2014 - Android UXPiervincenzo Madeo
 
UX Prototyping and Personas 9-5-14
UX Prototyping and Personas 9-5-14UX Prototyping and Personas 9-5-14
UX Prototyping and Personas 9-5-14Shilpa Thanawala
 

Ähnlich wie Excellence in the Android User Experience (20)

UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile apps
 
UI and UX for Mobile Developers
UI and UX for Mobile DevelopersUI and UX for Mobile Developers
UI and UX for Mobile Developers
 
Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014
 
Android UI Design Tips
Android UI Design TipsAndroid UI Design Tips
Android UI Design Tips
 
dmedia DP2 Interaction Design - Deliverable 2
dmedia DP2 Interaction Design - Deliverable 2dmedia DP2 Interaction Design - Deliverable 2
dmedia DP2 Interaction Design - Deliverable 2
 
Interactive cues in flat design
Interactive cues in flat designInteractive cues in flat design
Interactive cues in flat design
 
UI Design
UI DesignUI Design
UI Design
 
UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile apps
 
10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers
 
Presentation Ux
Presentation UxPresentation Ux
Presentation Ux
 
Designing for Mobile: User-centering; How-tos; Trends
Designing for Mobile: User-centering; How-tos; TrendsDesigning for Mobile: User-centering; How-tos; Trends
Designing for Mobile: User-centering; How-tos; Trends
 
UX Prototyping and Personas 9 25-15
UX Prototyping and Personas 9 25-15UX Prototyping and Personas 9 25-15
UX Prototyping and Personas 9 25-15
 
Make better apps - Guide for Better UX
Make better apps - Guide for Better UXMake better apps - Guide for Better UX
Make better apps - Guide for Better UX
 
Usability principles 1
Usability principles 1Usability principles 1
Usability principles 1
 
Web UI Design Patterns 2014
Web UI Design Patterns 2014Web UI Design Patterns 2014
Web UI Design Patterns 2014
 
Application Design - Part 3
Application Design - Part 3Application Design - Part 3
Application Design - Part 3
 
UX Prototyping and Personas 11-14-14
UX Prototyping and Personas 11-14-14UX Prototyping and Personas 11-14-14
UX Prototyping and Personas 11-14-14
 
Droidcon2014 - Android UX
Droidcon2014 - Android UXDroidcon2014 - Android UX
Droidcon2014 - Android UX
 
UX Prototyping and Personas 9-5-14
UX Prototyping and Personas 9-5-14UX Prototyping and Personas 9-5-14
UX Prototyping and Personas 9-5-14
 
Casestudy
CasestudyCasestudy
Casestudy
 

Kürzlich hochgeladen

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 

Kürzlich hochgeladen (20)

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 

Excellence in the Android User Experience

  • 1.
  • 2. Excellence in the Android User Experience Roman Nurik
  • 3. Roman Nurik Android Developer Advocate Google @romannurik I care about icons, and I think you should too ;-)
  • 4. Where does the user experience begin?
  • 8. And where does user experience extend to?
  • 9. App Usage Reviews Recommendations Forums Support
  • 10. Agenda 1.  Making a great first impression 2.  Designing for ease of use 3.  UI design + dev tips 4.  New tools 5.  Continuing to impress the user
  • 11. Making a great first impression
  • 12. You can start setting appropriate expectations and impressing the user sooner than you think:   Have a clean, beautiful and guideline-friendly icon   Have a unique and appropriate listing title   Have an honest and useful listing description
  • 13. DO DON’T
  • 14. You don’t always have control over the first impression.   Press and word-of-mouth reviews   User’s previous exposure to your brand   Market ratings Improving the quality of your app will help positively influence these factors.
  • 15. Once your app is installed, get the user up and running as quickly as possible.   Don’t require a lengthy registration process –  Users hate typing on mobile devices   Sync user data and context immediately –  Users shouldn’t have to recreate their desktop environment on their mobile phone
  • 16. Your ‘home’ activity should be straightforward. It’s also an opportunity to show off available features, in a highly aesthetic, consistent, yet brand-faithful way.
  • 17. In some cases, your app may call for a unique user interface. In these cases, consider greeting the user and educating them on the UI. Make them feel comfortable with your app. Example: Winamp for Android
  • 18. Greeting the user with a one-time tutorial screen can also inform them about app features like widgets, live wallpapers, or global search
  • 20. Clarity begets ease of use. An ideal design process: 1.  Lay out your information hierarchy and data model 2.  Choose a primary UI navigation pattern 3.  Sketch or otherwise prototype your UI
  • 21. DO DON’T   Dashboard +   5+ tabs or bottom tabs Action bar   Navigation sections   Top tabs (up to 4) in options menu   Sliding top tabs   On-screen back button (homogenous content)
  • 22.
  • 23. Primary action bar pattern Alternative or secondary action bar patterns
  • 24.
  • 25. DO feel free to customize the way tabs look
  • 26. DON’T alter the back stack if you’re using tabs
  • 27. Scrollable tabs + horizontal swiping is best for homogenous content Example: News and Weather (stock Android)
  • 28.
  • 29. Prototyping tools and methods:   Paper + pen   Pencil for Firefox – more on this in a bit   Adobe Fireworks – interactive prototypes
  • 30. UI design + dev tips (abridged)
  • 32.   DON’T simply port your   DON’T use px units, UI from other platforms use dp (sp for text)   DON’T overuse modal   DON’T use small font progress & sizes confirmation dialogs   DO make large,   DO support D-pad & obvious tap targets trackball navigation (buttons, list items)   DO properly manage   DO use proper margins the activity stack and padding   DO properly handle orientation changes
  • 33. DO localize if you’re available globally
  • 34. DO work with visual and interaction designer(s)
  • 35. Drawable XML (no PNGs!) PNGs, 9-patch PNGs, optimized for multi. densities Layout XML optimized for physical size and orientation Styles and themes, etc. Strings XML localized for your target regions
  • 36. foo.xml: <selector> <item android:drawable="@drawable/foo_disabled" android:state_enabled="false" ... /> <item android:drawable="@drawable/foo_pressed" android:state_pressed="true" ... /> <item android:drawable="@drawable/foo_focused" android:state_focused="true" ... /> <item android:drawable="@drawable/foo_default" /> </selector>
  • 37. foo_default.png foo_disabled.png foo_focused.png foo_pressed.png foo_default.png foo_disabled.png foo_focused.png foo_pressed.png
  • 38. foo.9.png   Similar to CSS3 border-image   Border pixels indicate stretchable regions   Make both -mdpi and -hdpi versions!
  • 41. New Android UI Utilities open source project:   Prototyping stencils for Pencil   Android Asset Studio   Photoshop icon templates
  • 43.
  • 44.
  • 47. Copyrights and Trademarks   Android, Google are registered trademarks of Google Inc.   All other trademarks and copyrights are the property of their respective owners.