User Experience

Built for BlackBerry apps and games are designed to deliver the signature BlackBerry 10 experience to our customers.
BlackBerry 10 provides a seamless experience that gives users full control and flexibility in every moment and with every touch.
It's as natural and fluid as our actions are in the real world.
The user interface keeps the momentum going, allowing users to achieve their goals quickly and efficiently.
Review the BlackBerry 10 UI Guidelines and Keep these principles in mind:

Organize information in logical and approachable ways so that users can respond quickly

Predict what users want to do next in that context

Customize menus for the app and introduce them at the right time, in the right place

Help people connect

Don't interrupt the flow between what users see and what they do next

We've now made building the signature BlackBerry 10 experience straightforward with criteria checklists for steps to create an app or game to achieve the Built for BlackBerry designation.
Also, check out the criteria-specific pages for further detail.

Games must support all touch input devices with a 16:9 aspect ratio on codeline and/or all physical keyboard input devices with a 1:1 aspect ratio on codeline in order to earn the designation for that respective class of device.

Because people care about content - pictures, messages, and updates, create an experience where content dominates.
The options on the screen should stay out of the way but still give users freedom of control.
This is especially important for BlackBerry smartphones with a physical keyboard because the screen is smaller than all-touch BlackBerry smartphones.

In some situations, lists may not contain any initial data because no content is currently available, or the user hasn't created content yet. This state is called an empty state.

Instances where list view contains no data or user needs to create content, app uses empty space to promote content creation. For example, pictures app tells user they can take pictures and videos with the camera, and prompts user to launch camera.

Sheets are full-screen views you can use for sub-tasks. Sheets overlay the current context by sliding in from the right of the screen onto a full-screen view. When users complete the task, sheets slide right and disappear, and return users to their location on the screen.

Dialog boxes have many different roles in BlackBerry 10.
They can be employed as notifications, display progress and activity, show errors, and help with the deletion process.
As useful and attention-getting as they are, you should try to avoid implementing them whenever possible.
They are modal, and interrupt the user's interaction with the UI flow.

No intrusive dialogue: no pop-ups that unnecessarily interrupt user experience.

Forms ask users to enter or select information.
For example, when users edit a contact's details or create a meeting request, they're using a form.

Ensure virtual keyboard is active based on form type.
For example, if a number field is active, the virtual keyboard should have the number view visible to user.
The same is true for letter based forms.

Instead of "poking" UI components, users interact with content on the screen using gestures.
Avoid cluttering the screen with UI components and design your application to use the available gestures.
For example, let users zoom into a picture with the spread gesture instead of tapping a button to incrementally zoom in.

Notifications tell users about app events, such as a new email message or a meeting reminder.
You can trigger a notification when a new event or new information is available that users might care about.
The more important and time-critical the notification, the more intrusive it should be.

If using notifications, must enable toggle for ability to turn off and on.

Highlighting helps users identify the item that they're acting on.
The highlight on a component behaves differently depending on the component and the context.

For binary interactions, highlight the component when users touch it.
Remove the highlight once the user moves their finger off the control.
The highlight should return when the control is touched again, unless the control scrolls with the view.

If an item requires continuous interaction (for example, a slider), highlight the item until users release their finger.
In this case, you might need to lock other items that allow scrolling, such as lists.

Choose a navigation structure based on the most important features in your app and the type of content that the application provides.
Give users quick access to the most frequent tasks and don't overwhelm them with content or tasks that are less important.
Determine which of the following approaches work the best for your app.

An action bar is an area along the bottom of the screen that gives you a compact way to include actions and tabs that apply to the screen.
The location of the action bar lets users access actions and tabs easily and effectively.

Position: Bottom of Screen.

Contents: one action other than 'back'.

Size: Action Bar - 81 x 81 pixels.

Action menus contain specific actions that are used less often than actions in the action bar and are not prominent or frequent enough to place inline on the screen.

Application menus hold important actions that are common across the application and aren't context-specific. For example, "Settings", "Log Out", and "Help". Users open application menus by swiping down from the top of the screen. Users dismiss them by swiping up toward the top of the screen or by tapping outside the menu.

Context menus give users a quick way to use the most common actions for an item.
Context menus are similar to right-click context menus in desktop applications, but are designed for touch interfaces.
If you use a context menu in your app, users don't have to open an item to act on it.

Users delete information daily.
Before you support deleting in your app, think about the type of information users might delete and how important it is.
If users delete something by mistake, they might want to retrieve it, but prompting users to confirm every deletion can slow them down.

Users should feel confident that actions that they've asked the device to perform, such as rescaling an image or opening a new screen, are progressing as expected.

Progress and Activity Indicators to be used if longer than 3 seconds to load.

Activity Indicator: used if functioning but cannot indicate a specific time frame for action.

Progress Indicator: used if functioning and can
indicate the specific time frame for action.

Global Indicator: used if functioning and can continue with other actions (modal).

Integrity of View

When user returns to a view, show content from last filtered state.
For example, when using a sports-score oriented app and user has indicated MLB as a preferred sports league, maintain the MLB view upon opening the app.