User experience rules, pro-tips and patterns from a technical perspective. In this session we'll iterate over Google's quality application checklist, design guidelines and resource library as well as the material design guidelines, provide examples, clarifications and techniques to facilitate adherence along with tool suggestions from a developer's point of view.
2. Are you experienced? by Royi Benyossef (+royiby)
Android developer since 2009.
GDG Herzliya co-founder.
Android speaker and lecturer.
Android Mentor for Google Launchpad.
Android GDE 2013, 2014, 2015.
Developer relations manager @ Stealth
Royi Benyossef
6. Are you experienced? by Royi Benyossef (+royiby)
Motivation
Great UX Beautiful graphics
7. Are you experienced? by Royi Benyossef (+royiby)
Motivation
Great UX Beautiful graphics
Identifiable branding
8. Are you experienced? by Royi Benyossef (+royiby)
Motivation
Great UX Beautiful graphics
Identifiable branding
Intuitive UI
9. Are you experienced? by Royi Benyossef (+royiby)
Motivation
Great UX Beautiful graphics
Identifiable branding
Intuitive UI
Low “friction”
10. Are you experienced? by Royi Benyossef (+royiby)
Motivation
Great UX Beautiful graphics
Identifiable branding
Intuitive UI
Low “friction”
High turnover rate
20. Are you experienced?! by Royi Benyossef (+royiby)
Funnel
Glossary
Representation of user base
Wide at the top
Thin at the bottom
Each step applies friction
21. Are you experienced?! by Royi Benyossef (+royiby)
Funnel
Glossary
Representation of user base
Wide at the top
Thin at the bottom
Each step applies friction
(=drop-outs)
22. Are you experienced?! by Royi Benyossef (+royiby)
Glossary
- The funnel
Friction?
?!?
24. Are you experienced?! by Royi Benyossef (+royiby)
Motivation
- The funnel
Friction? OK, but i’m
watching
you!
25. Are you experienced?! by Royi Benyossef (+royiby)
- The funnel
Friction
Motivation
Redundant effort
26. Are you experienced?! by Royi Benyossef (+royiby)
- The funnel
Friction
Motivation
Redundant effort
Cognitive overhead
27. Are you experienced?! by Royi Benyossef (+royiby)
Motivation
- The funnel
- Friction
Importance?
28. Are you experienced?! by Royi Benyossef (+royiby)
Motivation
- The funnel
- Friction
Importance
Agenda
Trust
The dropout triangle
29. ALL ABOARD!!! by Royi Benyossef (+royiby)
Motivation
- The funnel
- Friction
Importance
# of users
Trust
The dropout triangle
30. ALL ABOARD!!! by Royi Benyossef (+royiby)
Motivation
- The funnel
- Friction
Importance
31. Are you experienced?! by Royi Benyossef (+royiby)
Motivation
- The funnel
- Friction
Importance
Agenda
Trust
The dropout triangle*Completely made-up graph
39. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
Design System icons
40. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
Design System icons
(Icon = functionality)
41. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
Navigation
“Android” Back button
42. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
Navigation
“Android” Back button
Back from dialogs
43. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
Navigation
“Android” Back button
Back from dialogs
Home is sacred
44. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
45. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
46. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
(= on-going event)
47. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content
48. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content:
> No adverts!
49. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content:
No adverts!
> Related content
50. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content
Usages
51. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content
Usages:
> Contextual change
52. Are you experienced? by Royi Benyossef (+royiby)
Visual & graphics
- Design
- Navigation
Notifications
Stack notifications
Persistency
Content
Usages:
Contextual change
> On-going BG action
55. Are you experienced? by Royi Benyossef (+royiby)
Functionality
Permissions Request what you need
56. Are you experienced? by Royi Benyossef (+royiby)
Functionality
- Permissions
Install location
Work on SD card if applicable
57. Are you experienced? by Royi Benyossef (+royiby)
Functionality
- Permissions
Install location
Work on SD card if applicable
Size > 10MB -> applicable!
60. Are you experienced? by Royi Benyossef (+royiby)
Performance
Stability No:
> Crashes/force closing
61. Are you experienced? by Royi Benyossef (+royiby)
Performance
Stability No:
Crashes/force closing
> Freezing/ANRs
62. Are you experienced? by Royi Benyossef (+royiby)
Performance
Stability No:
Crashes/force closing
Freezing/ANRs
> Abnormal behaviour
63. Are you experienced? by Royi Benyossef (+royiby)
Performance
Stability No:
Crashes/force closing
Freezing/ANRs
Abnormal behaviour
On Any target device!
64. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly
65. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly (< 2 seconds)
66. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly
OR
67. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly
OR
Provide feedback
68. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly OR
Provide feedback:
> Progress bar
69. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
Responsiveness
Load quickly OR
Provide feedback:
Progress bar
> Splash screen
70. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
Efficiency
No StrictMode red marks
71. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
Efficiency
No StrictMode red marks
(= When StrictMode is on)
72. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
- Efficiency
Battery
Where available (6.0+)
73. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
- Efficiency
Battery
Where available (6.0+):
> + Doze & app standby
74. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
- Efficiency
Battery
Where available (6.0+):
+ Doze & app standby
> Exemptions
75. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
- Efficiency
Battery
Where available (6.0+):
+ Doze & app standby
> Exemptions:
- Core func. disrupt
76. Are you experienced? by Royi Benyossef (+royiby)
Performance
- Stability
- Responsiveness
- Efficiency
Battery
Where available (6.0+):
+ Doze & app standby
> Exemptions:
Core func. disrupt
- needs approval
79. Are you experienced? by Royi Benyossef (+royiby)
Google Play
Policies Content legality
80. Are you experienced? by Royi Benyossef (+royiby)
Google Play
Policies Content legality:
> Appropriateness
81. Are you experienced? by Royi Benyossef (+royiby)
Google Play
Policies Content legality:
Appropriateness
> Intellectual proprietary
82. Are you experienced? by Royi Benyossef (+royiby)
Google Play
Policies Content legality:
Appropriateness
Intellectual proprietary
> Matureness
83. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
84. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics:
> High quality
85. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics:
High quality
> No device images
86. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics:
High quality
No device images
> No screenshots
87. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics:
High quality
No device images
No screenshots
> No small text
88. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics:
High quality
No device images
No screenshots
No small text
> Not an advert
89. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
90. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video:
> No non-Android devices
91. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video:
No non-Android devices
> Non-misleading
92. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
User support
93. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
User support:
> Large impact bugs
94. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
User support:
> Large impact bugs:
- Popular devices
95. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
User support:
> Large impact bugs:
- Popular devices
- Many devices
96. Are you experienced? by Royi Benyossef (+royiby)
Google Play
- Policies
Details page
Graphics
Screenshots & video
User support:
Large impact bugs
> Specific bugs
100. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays
101. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays:
> Round/square
102. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays:
Round/square
> Fits physical display
103. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays:
Round/square
Fits physical display
> Nothing is cut
104. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays
Text is legible
105. Are you experienced? by Royi Benyossef (+royiby)
Visual
Layout Formatted for displays
Text is legible
(=Min<16sp)
106. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
Launcher
Launcher is app name
107. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
Launcher
Launcher is app name
(= Not command)
108. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
109. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
110. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
(-ex. single action card)
111. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette
112. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette:
> White icon & title
113. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette
Photo background
114. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette
Photo background:
> Informative
115. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette
Photo background:
Informative (!branded)
116. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
Notifications
Confirmation animations
App icon, top-right on card
Color palette
Photo background:
Informative
> Resolution - 400x400
117. Are you experienced? by Royi Benyossef (+royiby)
Visual
- Layout
- Launcher
- Notifications
Google Play
Includes a wear screenshot
118. Are you experienced? by Royi Benyossef (+royiby)
Functional
(What you get 2 - The revenge)
120. Are you experienced? by Royi Benyossef (+royiby)
Functional
General Wearable functionality
121. Are you experienced? by Royi Benyossef (+royiby)
Functional
General Wearable functionality
Visible to the user
122. Are you experienced? by Royi Benyossef (+royiby)
Functional
General Wearable functionality
Visible to the user
As advertised in Google Play
123. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
Packaging
Depended apps = packaged
124. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.
125. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.:
> RemoteIntent
126. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.:
RemoteIntent
> WearableExtender
127. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.
Reply
128. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.
Reply:
> Voice
129. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.
Reply:
Voice
> Quick responses
130. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
Notifications
Wearable specific func.
Reply
Notification stack
131. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
- Notifications
Gestures
Fullscreen activities
132. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
- Notifications
Gestures
Fullscreen activities:
> Long press = quit
133. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
- Notifications
Gestures
Fullscreen activities:
Long press = quit
> No swipe to dismiss?
= long press to dismiss
134. Are you experienced? by Royi Benyossef (+royiby)
Functional
- General
- Packaging
- Notifications
- Gestures
Watch face
Official watch face API
136. Are you experienced? by Royi Benyossef (+royiby)
General
Basic Target API levels
137. Are you experienced? by Royi Benyossef (+royiby)
General
Basic Target API levels
Specify HW dependencies
138. Are you experienced? by Royi Benyossef (+royiby)
General
Basic Target API levels
Specify HW dependencies
Declare tested screen sizes
139. Are you experienced? by Royi Benyossef (+royiby)
General
Basic Target API levels
Specify HW dependencies
Declare tested screen sizes
Use the entire screens
140. Are you experienced? by Royi Benyossef (+royiby)
General
Basic Target API levels
Specify HW dependencies
Declare tested screen sizes
Use the entire screens
Tablet screenshots on Play
141. Are you experienced? by Royi Benyossef (+royiby)
General
- Basic
Layouts
Custom layout.xml(s)
142. Are you experienced? by Royi Benyossef (+royiby)
General
- Basic
Layouts
Custom layout.xml(s)
Dynamic screen size (+Min)
143. Are you experienced? by Royi Benyossef (+royiby)
General
- Basic
Layouts
Custom layout.xml(s)
Dynamic screen size (+Min)
Dimens
144. Are you experienced? by Royi Benyossef (+royiby)
General
- Basic
Layouts
Custom layout.xml(s)
Dynamic screen size (+Min)
Dimens
Font size
145. Are you experienced? by Royi Benyossef (+royiby)
General
- Basic
Layouts
Custom layout.xml(s)
Dynamic screen size (+Min)
Dimens
Font size
Padding (48p, 16p grid)
149. Are you experienced? by Royi Benyossef (+royiby)
Animation
(Meaningful and authentic)
150. Are you experienced? by Royi Benyossef (+royiby)
Animation
Motion Authentic mass and weight
151. Are you experienced? by Royi Benyossef (+royiby)
Motion Authentic mass and weight
Natural accel./decel.
Animation
152. Are you experienced? by Royi Benyossef (+royiby)
Motion Authentic mass and weight
Natural accel./decel.
(= Avoid linear)
Animation
153. Are you experienced? by Royi Benyossef (+royiby)
Motion Authentic mass and weight
Natural accel./decel.
Entrances and exits
Animation
154. Are you experienced? by Royi Benyossef (+royiby)
Motion Authentic mass and weight
Natural accel./decel.
Entrances and exits
- Constant speed =
less attention
Animation
155. Are you experienced? by Royi Benyossef (+royiby)
- Motion
Interaction
Animation
Responsive
156. Are you experienced? by Royi Benyossef (+royiby)
- Motion
Interaction
Animation
Responsive
Tangible
157. Are you experienced? by Royi Benyossef (+royiby)
- Motion
Interaction
Animation
Responsive
Tangible
(= As If there’s no glass)
158. Are you experienced? by Royi Benyossef (+royiby)
- Motion
Interaction
Animation
Responsive
Tangible
Instant visual confirmation
159. Are you experienced? by Royi Benyossef (+royiby)
- Motion
Interaction
Animation
Responsive
Tangible
Instant visual confirmation
At point of contact
160. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types
161. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
> Incoming
162. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
> Incoming
(= New items)
163. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
Incoming
> Outgoing
164. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
Incoming
> Outgoing
(= Contextually non-relevant)
165. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
Incoming
Outgoing
> Shared
166. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types:
Incoming
Outgoing
> Shared
(= Constant)
167. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types
Tips
168. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types
Tips:
> Direct user attention
169. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types
Tips:
Direct user attention
> Connect visually
170. Are you experienced? by Royi Benyossef (+royiby)
- Motion
- Interaction
Transitions
Animation
Types
Tips:
Direct user attention
Connect visually
> Precision