Palm Developer Center

Application Checklist

Application Developers are held to a very high standard with regard to User Experience. Use the checklist below to evaluate your application to ensure that it delivers a User Experience that is consistent with Palm's core applications, embodies the design principles set forth in the UI Guidelines and meets/exceeds the user's expectations. These are the kind of applications Palm will include in the App Catalog.

If you can check each checkbox below, you’re ready to upload your app to the App Catalog. If you cannot check certain items, explain why when you submit your application.

Take a Quick Look
Take 5-10 minutes to launch the application and try many of its features. See "how it feels" overall. Pay special attention to how scene-to-scene navigation & transitions work.
The application launches quickly and displays content as soon as possible.

It takes less than 3 seconds to launch the application
OR
It takes longer than 3 seconds to launch, but the app displays feedback and/or cached content, so the user understands that the app is starting.

Navigating to scenes in the application works the way webOS interaction guidelines specify.

The Back Gesture is used to navigate to previous scenes in the scene hierarchy. The scene does not include buttons to navigate to previous scenes in the hierarchy.

Users tap items in a scene to interact with them. Tapping opens a new scene or performs an action.

The proper kind of transition is displayed when navigating to another scene.

When navigating to a different scene , a zoom transition is used. When updating or replacing content in the same scene , a cross-fade

The application works well on all webOS devices Palm produces.

The application has been tested on all webOS devices (either on the device or in the emulator) and its UI works effectively on all screen sizes/resolutions (320 x 480 and 320 x 400).

Dig Into the Details
Take 15 minutes to explore key features in detail. Pay special attention to how the things in each scene work, look and feel. Note how well you can interact with the application.
The application uses UI elements that look, feel and work the way webOS users expect.

The application includes standard webOS controls (like lists, buttons, etc) that Palm provides.
And/Or
It includes custom controls. If the app uses custom controls that are analagous to standard webOS controls, they should support the same interactions/feedback that their webOS analog does. If the custom control is a new control that webOS does not have, it should work/look/feel like the other UI controls on the platform.

The application does not use controls or design elements from other mobileOS platforms.

Scenes contain controls that support standard behaviors webOS users expect.

Users can flick and drag to scroll content. The app does not include buttons or other controls to scroll content.

A tapped item displays visual "tap feedback" so it's clear that the item has been tapped.

Tap feedback is the "right" size. It is neither larger or smaller than the object being tapped (button, row height, etc).

Scenes support gestures like pinch/spread to zoom in/out of content like images and maps. Users tap items in a scene to interact with them. Tapping opens a new scene or performs an action.

Creating, Editing and modifying Preferences works the way webOS users expect.

When editing content that resides on the device (or in an account the device is connected to) like Contacts, Calendar Events, Tasks and more, the Back gesture automatically saves changes made in the scene.

When creating content that will be sent or posted elsewhere (like an email message), the UI includes a button to send/post the item. The Back gesture saves (but does not send) the item.

When the user edits content in a scene and throws the card away, the changes are saved.

If the scene includes a button to leave the scene, it is called "Done" (not Save).

When changing application Preferences, changes are either applied immediately or are applied when the Back gesture is performed.

If your scene contains buttons that perform actions

There are no more than 5 commandMenu buttons at the bottom of a scene that contains them.

All interactive UI elements can be tapped easily and successfully.

Tapable UI elements are at least 48 pixels tall and/or wide. If the visual component of a tapable item is smaller, the div its enclosed in is large enough to ensure tapability.

Text and labels are easy to read on the device.

Body text should never be smaller than 15 px.

Labels should never be smaller than 14 px. Note: Font sizes between 18-20 px work best on webOS devices. Use a large font (like 22) for tappable list items.

Data entry is quick and easy

The default keyboard is set properly when the user enters a field. Examples: The Number keyboard for phone number & zip code fields. The Text keyboard is set for name, city, and state fields.

The application displays messages, when appropriate.

When the application requires a decision from the user before it can proceed, it displays a dialog box.

When the app is running in the background and does something the user should know about, but does not require them to interact with it immediately, it displays a banner notification.

When the app is running in the background and does something the user must know about and interact with (calendar reminder, phone call), a popup notification is displayed.

The application displays feedback if an action takes more than 2 seconds to complete.

When the app performs an action that takes more than 2 seconds, an activity indicator is displayed.

When a scene takes more than 2 seconds to load, the app displays UI elements or cached content, and displays a small activity indicator.

When a user taps a pushbutton that intiates an action that takes more than 2 seconds to complete (like Signing In), the app displays a small activity indicator on the button and changes the text label to indicate what the app is doing.

Inspect the Application Menu
This menu appears in the upper left hand corner of a scene. Users can tap it to see standard menu items (Edit, Help), and others that are useful in the current scene. Take 10 minutes to check the important scenes in the app and see if each scene's Application Menu meets the criteria below.
The Application Menu contains the Standard menu items, in the standard order.

All App Menus contain Palm's Edit menu item drawer (first position) and Help menu item (last position).

If the application manages Preferences and/or Accounts, a menu item appears immediately above Help.

If the application manages Preferences only, the menu item is named Preferences.

If the application manages Accounts only, the menu item is named Accounts.

If the application manages Preferences and Accounts, the menu item is named Preferences & Accounts.

If there are special actions a user can perform in a scene, they can appear as additional menu items in the App Menu.

The scene's special menu items appear between Edit and the last Palm-resevered item (Help or Preferences & Accounts).

The Help command opens a scene that includes at least one method of contacting the developer for support.

Tapping the Help menu item opens a Help scene. Preferably, the standard webOS Help scene.

The Help scene displays at least one method of support (developer website, phone number, email) that works. It can also contain links to application-related help, frequently asked questions, etc.

The Application is a "Good Citizen"
No one likes an app that ignores system-level preferences, especially when the user set them themselves...or hogs the processor and memory so much that other apps perform poorly. Take a few minutes and see whether or not the app behaves well in these situations.
The application respects system-level preferences and settings. It does not override or manage those settings within the app.

If the application uses Location (GPS) information, it uses Location Services and respects the user's OS-level Location Services preferences.

The application respects the Volume and Ringer Switch settings. For instance, if the volume is turned down, the app does not play its audio at a different volume level. If the Ringer Switch is off, the app respects the "Ringer Switch Off" settings in the Sounds & Ringtones control panel.

The application behaves responsibly when it is minimized to a card, and continues to run in the background.

The application displays notifications at reasonable intervals.

The application does not cause other apps "slow down" or work poorly while it's running in the background.

Processor-intensive applications (like games) pause when they are minimized to a card.

The application’s size is as small as possible.

The application’s size is 5 mb or less
OR
The the developer provided acceptable reasons for their file size when they uploaded the app. Even so, recommend that they:

  • Find ways to use "more efficient" images (like a short one, that can be repeated to create a pattern) instead of full-size images.
  • Optimize files that are included in the app (images, movie)
  • Consider leaving certain things out of the app and download or stream them when needed.

If the application embraces all of these values, it will delight users and will be an outstanding citizen on the webOS platform.