Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Java Development

Properly Push and Pop Global Screens

by Retired ‎02-16-2010 01:46 PM - edited ‎09-16-2010 02:31 PM (4,165 Views)

Summary

 

This article applies to the following:

  • BlackBerry® Device Software 4.2 and later
  • BlackBerry Java Development Environment (BlackBerry JDE) 4.2 and later

Description

 

On the BlackBerry device, a screen can either be shown within the user interface (UI) of the foreground application, or it can be shown as a global screen (which is shown regardless of which application is in the foreground). Global screens can be used to bring alerts, reminders, and other background services to the BlackBerry device user’s attention without the need for the calling application to be in the foreground. With global screens, only one may be displayed at a time (others are queued behind it based on priority). Third-party applications are restricted to setting the priority of their global screens to a maximum level, as outlined by the following priority list:

  1. Incoming call screen
  2. Device locked screen
  3. Firewall prompt
  4. Third-party application global screens

The most common use of a global screen is as a dialog box for a notification (as is done with calendar reminders). Previously, global screens were to be displayed and dismissed using the queueStatus() and dismissStatus() methods of the class net.rim.device.api.ui.UiApplication. These methods have since been deprecated and replaced by pushGlobalScreen() and popScreen(), which are also from the UiApplication class.

 

If an application is still using queueStatus() and dismissStatus() in order to accommodate older BlackBerry devices, they should not mix these calls with pushGlobalScreen() and popScreen(). That is, do not use queueStatus() to display a screen and then popScreen() to dismiss it. By the same token, pushGlobalScreen() and dismissStatus() should not be combined. Mixing these calls may result in an IllegalStateException due to updates to the UI framework in newer versions of BlackBerry Device Software.

Contributors
Users Online
Currently online: 4 members 5,277 guests
Please welcome our newest community members: