AndroidHelp

AndroidHelp

Breaking

Friday, 16 February 2018

New in Android

February 16, 2018 0
New in Android
A quick look at the new patterns and styles you can use to build beautiful Android apps…

Android 5.0 Lollipop


Material design

Material design is a comprehensive guide for visual, motion, and interaction design across platforms and devices. Android 5.0 provides a new theme, new widgets for complex views, and new APIs for shadows and animations that help you implement material design patterns in your apps.

Notifications

Notifications receive important updates in Android 5.0, with material design visual changes, notification availability in the lockscreen, priority notifications, and cloud-synced notifications.

Android 4.4 KitKat



Your branding

Consistency has its place in Android, but you also have the flexibility to customize the look of your app to reinforce your brand.
Use your brand color for accent by overriding the Android framework's default blue in UI elements like checkboxes, progress bars, radio buttons, sliders, tabs, and scroll indicators.
Show your app's launcher icon and name in the action bar so that users can see it in every screen of your app.
Your Branding highlights these and other pointers on how to incorporate elements of your brand into your app's visual language — highly encouraged!

Touch feedback

Before Android KitKat, Android's default touch feedback color was a vibrant blue. Every touch resulted in a jolt of high-contrast color, in a shade that might not have mixed well with your brand's color(s).
In Android KitKat and beyond, touch feedback is subtle: when something is touched, by default its background color slightly darkens or lightens. This provides two benefits: (1) sprinkles of encouragement are more pleasant than jolts, and (2) incorporating your branding is much easier because the default touch feedback works with whatever hue you choose. Check the updated Touch Feedback page for more details.

Full screen

Android KitKat has improved support for letting your app use the entire screen, with a few different approaches to meet the varying needs of apps and content. The new Full Screen page will guide you in setting the stage for deep user engagement.

Gestures

The updated Gestures page covers new and updated gestures introduced in Android KitKat: double touch drag anddouble touch. These gestures are used for changing the viewing size of content.
 

Android 4.1 Jelly Bean


Notifications

Notifications have received some notable enhancements in Android 4.1:
  • Users can act on notifications immediately from the drawer
  • Notifications are more flexible in size and layout
  • A priority flag helps sort notifications by importance
  • Notifications can be collapsed and expanded
The base notification layout has not changed, so app notifications designed for versions earlier than Jelly Bean still look and work the same. Check the updated Notifications page for more details.
 

Resizable Application Widgets

Widgets are an essential aspect of home screen customization, allowing "at-a-glance" views of an app's most important data and functionality right from the user's home screen. Android 4.1 introduces improved App Widgets that canautomatically resize and load different contentbased upon a number of factors including:
  • Where the user drops them on the home screen
  • The size to which the user expands them
  • The amount of room available on the home screen
You can supply separate landscape and portrait layouts for your widgets, which the system inflates as appropriate when the screen orientation changes. The Application Widgetspage has useful details about widget types, limitations, and design considerations.
 

Accessibility

One of Android's missions is to organize the world's information and make it universally accessible and useful. Our mission applies to all users-including people with disabilities such as visual impairment, color deficiency, hearing loss, and limited dexterity.
The new Accessibility page provides details on how to design your app to be as accessible as possible by:
  • Making navigation intuitive
  • Using recommended touch target sizes
  • Labeling visual UI elements meaningfully
  • Providing alternatives to affordances that time out
  • Using standard framework controls or enable TalkBack for custom controls
  • Trying it out yourself
You can supply separate landscape and portrait layouts for your widgets, which the system inflates as appropriate when the screen orientation changes. The Widgets page has useful details about widget types, limitations, and design considerations.

Android 4.0 Ice Cream Sandwich


Navigation bar

Android 4.0 removes the need for traditional hardware keys on phones by replacing them with a virtual navigation bar that houses the Back, Home and Recents buttons.
 

Action bar

The action bar is the most important structural element of an Android app. It provides consistent navigation across the platform and allows your app to surface actions.
 

Multi-pane layouts

Creating apps that scale well across different form factors and screen sizes is important in the Android world. Multi-pane layouts allow you to combine different activities that show separately on smaller devices into richer compound views for tablets.
 

Selection

The long press gesture which was traditionally used to show contextual actions for objects is now used for data selection. When selecting data, contextual action bars allow you to surface actions.

Android Design Principles

February 16, 2018 0
Android Design Principles
These design principles were developed by and for the Android User Experience Team to keep users' best interests in mind. For Android developers and designers, they continue to underlie the more detailed design guidelines for different types of devices.
Consider these principles as you apply your own creativity and design thinking. Deviate with purpose.

Enchant Me


Delight me in surprising ways

A beautiful surface, a carefully-placed animation, or a well-timed sound effect is a joy to experience. Subtle effects contribute to a feeling of effortlessness and a sense that a powerful force is at hand.
 

Real objects are more fun than buttons and menus

Allow people to directly touch and manipulate objects in your app. It reduces the cognitive effort needed to perform a task while making it more emotionally satisfying.
 

Let me make it mine

People love to add personal touches because it helps them feel at home and in control. Provide sensible, beautiful defaults, but also consider fun, optional customizations that don't hinder primary tasks.
 

Get to know me

Learn peoples' preferences over time. Rather than asking them to make the same choices over and over, place previous choices within easy reach.

Simplify My Life


Keep it brief

Use short phrases with simple words. People are likely to skip sentences if they're long.
 

Pictures are faster than words

Consider using pictures to explain ideas. They get people's attention and can be much more efficient than words.
 

Decide for me but let me have the final say

Take your best guess and act rather than asking first. Too many choices and decisions make people unhappy. Just in case you get it wrong, allow for 'undo'.
 

Only show what I need when I need it

People get overwhelmed when they see too much at once. Break tasks and information into small, digestible chunks. Hide options that aren't essential at the moment, and teach people as they go.
 

I should always know where I am

Give people confidence that they know their way around. Make places in your app look distinct and use transitions to show relationships among screens. Provide feedback on tasks in progress.
 

Never lose my stuff

Save what people took time to create and let them access it from anywhere. Remember settings, personal touches, and creations across phones, tablets, and computers. It makes upgrading the easiest thing in the world.
 

If it looks the same, it should act the same

Help people discern functional differences by making them visually distinct rather than subtle. Avoid modes, which are places that look similar but act differently on the same input.
 

Only interrupt me if it's important

Like a good personal assistant, shield people from unimportant minutiae. People want to stay focused, and unless it's critical and time-sensitive, an interruption can be taxing and frustrating.

Make Me Amazing


Give me tricks that work everywhere

People feel great when they figure things out for themselves. Make your app easier to learn by leveraging visual patterns and muscle memory from other Android apps. For example, the swipe gesture may be a good navigational shortcut.
 

It's not my fault

Be gentle in how you prompt people to make corrections. They want to feel smart when they use your app. If something goes wrong, give clear recovery instructions but spare them the technical details. If you can fix it behind the scenes, even better.
 

Sprinkle encouragement

Break complex tasks into smaller steps that can be easily accomplished. Give feedback on actions, even if it's just a subtle glow.
 

Do the heavy lifting for me

Make novices feel like experts by enabling them to do things they never thought they could. For example, shortcuts that combine multiple photo effects can make amateur photographs look amazing in only a few steps.
 

Make important things fast

Not all actions are equal. Decide what's most important in your app and make it easy to find and fast to use, like the shutter button in a camera, or the pause button in a music player.

Creative Vision

February 16, 2018 0
Creative Vision

Creative Vision

 
Android design is shaped by three overarching goals for users that apply to apps as well as the system at large. As you work with Android, keep these goals in mind.
 

Enchant me

Beauty is more than skin deep. Android apps are sleek and aesthetically pleasing on multiple levels. Transitions are fast and clear; layout and typography are crisp and meaningful. App icons are works of art in their own right. Just like a well-made tool, your app should strive to combine beauty, simplicity and purpose to create a magical experience that is effortless and powerful.

Simplify my life

Android apps make life easier and are easy to understand. When people use your app for the first time, they should intuitively grasp the most important features. The design work doesn't stop at the first use, though. Android apps remove ongoing chores like file management and syncing. Simple tasks never require complex procedures, and complex tasks are tailored to the human hand and mind. People of all ages and cultures feel firmly in control, and are never overwhelmed by too many choices or irrelevant flash.

Backwards Compatibility

February 16, 2018 0
Backwards Compatibility
Significant changes in Android 3.0 included:
  • Deprecation of navigation hardware keys (Back, Menu, Search, Home) in favor of handling navigation via virtual controls (Back, Home, Recents).
  • Robust pattern for the use of menus in action bars.
Android 4.0 brings these changes for tablets to the phone platform.

Adapting Android 4.0 to Older Hardware and Apps


Phones with virtual navigation controls

Android apps written for Android 3.0 and later display actions in the action bar. Actions that don't fit in the action bar or aren't important enough to be displayed at the top level appear in the action overflow.
Users access the action overflow by touching it in the action bar.

Phones with physical navigation keys

Android phones with traditional navigation hardware keys don't display the virtual navigation bar at the bottom of the screen. Instead, the action overflow is available from the menu hardware key. The resulting actions popup has the same style as in the previous example, but is displayed at the bottom of the screen.

Legacy apps on phones with virtual navigation controls

When you run an app that was built for Android 2.3 or earlier on a phone with virtual navigation controls, an action overflow control appears at the right side of the virtual navigation bar. You can touch the control to display the app's actions in the traditional Android menu styling.

Confirming & Acknowledging

February 16, 2018 0
Confirming & Acknowledging
In some situations, when a user invokes an action in your app, it's a good idea to confirm oracknowledge that action through text.
Confirming is asking the user to verify that they truly want to proceed with an action they just invoked. In some cases, the confirmation is presented along with a warning or critical information related to the action that they need to consider.
Acknowledging is displaying text to let the user know that the action they just invoked has been completed. This removes uncertainty about implicit operations that the system is taking. In some cases, the acknowledgment is presented along with an option to undo the action.
Communicating to users in these ways can help alleviate uncertainty about things that have happened or will happen. Confirming or acknowledging can also prevent users from making mistakes they might regret.

When to Confirm or Acknowledge User Actions


Not all actions warrant a confirmation or an acknowledgment. Use this flowchart to guide your design decisions.

Confirming


Example: Google Play Books

In this example, the user has requested to delete a book from their Google Play library. An alert appears to confirm this action because it's important to understand that the book will no longer be available from any device.
When crafting a confirmation dialog, make the title meaningful by echoing the requested action.

Example: Android Beam

Confirmations don't necessarily have to be presented in an alert with two buttons. After initiating Android Beam, the user is prompted to touch the content to be shared (in this example, it's a photo). If they decide not to proceed, they simply move their phone away.

Acknowledging


Example: Abandoned Gmail draft saved

In this example, if the user navigates back or up from the Gmail compose screen, something possibly unexpected happens: the current draft is automatically saved. An acknowledgment in the form of a toast makes that apparent. It fades after a few seconds.
Undo isn't appropriate here because saving was initiated by the app, not the user. And it's quick and easy to resume composing the message by navigating to the list of drafts.

Example: Gmail conversation deleted

After the user deletes a conversation from the list in Gmail, an acknowledgment appears with an undo option. The acknowledgment remains until the user takes an unrelated action, such as scrolling the list.

No Confirmation or Acknowledgment


Example: +1'ing

Confirmation is unnecessary. If the user +1'd by accident, it's not a big deal. They can just touch the button again to undo the action.
Acknowledgment is unnecessary. The user will see the +1 button bounce and turn red. That's a very clear signal.

Example: Removing an app from the Home Screen

Confirmation is unnecessary. This is a deliberate action: the user must drag and drop an item onto a relatively large and isolated target. Therefore, accidents are highly unlikely. But if the user regrets the decision, it only takes a few seconds to bring it back again.
Acknowledgment is unnecessary. The user will know the app is gone from the Home Screen because they made it disappear by dragging it away.

Full Screen

February 16, 2018 0
Full Screen
Some content is best experienced full screen, like videos, games, image galleries, books, and slides in a presentation. You can engage users more deeply with content in full screen by minimizing visual distraction from app controls and protecting users from escaping the app accidentally.
In version 4.4, Android offers two approaches for making your app go full screen: Lean Back and Immersive. In both approaches, all persistent system bars are hidden. The difference between them is how the user brings the bars back into view.

Lean Back

Touch the screen anywhere to bring back system bars.

Immersive

Swipe from the any edge of the screen with a hidden bar to bring back system bars.

Lean Back


The Lean Back approach is for full-screen experiences in which users won't be interacting heavily with the screen while consuming content, like while watching a video.
In this type of experience, users are leaning back and watching the screen. Then, when they need to bring back the bars, they simply touch anywhere. This gesture is easy and intuitive.

Immersive


The Immersive approach is mainly intended for apps in which the user will be heavily interacting with the full screen as part of the primary experience. Examples are games, viewing images in a gallery, or reading paginated content, like a book or slides in a presentation.
In this type of experience, when users need to bring back the system bars, they swipe from any edge where a system bar is hidden. By requiring this more deliberate gesture, the user's deep engagement with your app won't be interrupted by accidental touches and swipes.
The user learns about the gesture to bring back the system bars through a message that appears the first time the app goes full screen.
If your app has its own controls that aren't needed when a user is immersed in content, make them disappear and reappear in sync with the system bars. This rule also applies to any app-specific gestures you might have for hiding and showing app controls. For example, if touching anywhere on the screen toggles the appearance of an action bar or a palette, then it must also toggle the appearance of system bars.
You might be tempted to use this approach just to maximize screen real estate. But be mindful of how often users jump in and out of apps to check notifications, do impromptu searches, and more. This approach will cause users to lose easy access to system navigation, so a little extra space should not be the only benefit they're getting in return.

Variation: Swiping from edges with bars also affects the app


In the Immersive approach, any time a user swipes from an edge with a system bar, the Android framework takes care of revealing the system bars. Your app won't even be aware that this gesture occurred.
But in some apps, the user might occasionally need to swipe from the edge as part of the primary app experience. Examples are games and drawing applications.
For apps with this requirement, you can use a variation on the Immersive approach: when a user swipes from an edge with a system bar, system bars are shown and the gesture is passed to the app so the app can respond to the gesture.
For example, in a drawing app that uses this approach, if a user wants to draw a line that begins at the very edge of the screen, swiping from the edge would reveal the system bars and also start drawing a line that begins at the very edge.
In this approach, to minimize disruption while a user is deeply engaged in the app, the system bars are semi-transparent. The bars automatically disappear after a few seconds of no interaction or as soon as the user touches or gestures anywhere outside the system bars.

What About Lights Out Mode?


Before Android 4.4, the design guideline was to use Lights Out mode, a mode in which the Action Bar and Status Bar fades away and becomes unavailable after a few seconds of inactivity. The Navigation Bar is still available and responds to touches but appears dimmed.
Replace previous implementations of Lights Out mode with the Lean Back or Immersive approaches. Continue to use Lights Out mode for implementations of your app targeted for earlier releases.

Swipe Views

February 16, 2018 0
Swipe Views
Efficient navigation is one of the cornerstones of a well-designed app. While apps are generally built in a hierarchical fashion, there are instances where horizontal navigation can flatten vertical hierarchies and make access to related data items faster and more enjoyable. Swipe views allow the user to efficiently move from item to item using a simple gesture and thereby make browsing and consuming data a more fluent experience.

Swiping Between Detail Views


An app's data is often organized in a master/detail relationship: The user can view a list of related data items, such as images, chats, or emails, and then pick one of the items to see the detail contents in a separate screen.

Master (left) and detail (right) views.
On a phone, since the master and detail are on separate screens, this typically requires the user to jump back and forth between the list and the detail view, aka "pogo-sticking".
In cases where users will want to view multiple detail items in succession, avoid pogo-sticking by using the swipe gesture to navigate to the next/previous detail view.

Navigating between consecutive email messages using the swipe gesture. If a view contains content that exceeds the width of the screen such as a wide email message, make sure the user's initial swipes will scroll horizontally within the view. Once the end of the content is reached, an additional swipe should navigate to the next view. In addition, support the use of edge swipes to immediately navigate between views when content scrolls horizontally.

Scrolling within a wide email message using the swipe gesture before navigating to the next message.