3 Types of BlackBerry App

The BlackBerry platform supports 3 methodologies of development: BlackBerry browser applications, BlackBerry widgets and BlackBerry Java apps. Each type runs on a BlackBerry smartphone, but the methodologies each have their own advantages, disadvantages and developers must consider which deployment is most suitable for their client’s requirements.

BlackBerry Browser Applications

Considered to be the easiest to develop, but not the most flexible, BlackBerry Browser Applications have a cross over with traditional website development skills. Browser 6.0 supports CSS3, JavaScript, AJAX, RSS 2.0, DOM L3, HTML5, XHTML 1.1 and SVG Tiny 1.2. This option can also establish the user’s location via GPS, supports tab browsing and pushes data proactively.

BlackBerry Browser is available via all BlackBerry Smartphones. RIM considers the weaknesses of developing a BlackBerry Browser Application to be:

  • Advanced user interface requirements (unable to use spinners and custom dialogue boxes, or custom menu actions)
  • Content is stored on the server (users must wait to download the data each time)

However, there are several advantages to developing a BlackBerry Browser Application including:

  • Potential shorter development and testing times
  • Easier to find developers (common technologies in web developers)
  • No deployment issues
  • Has Smartphone integration (can launch phone, email, maps via built in masks)
  • Always on, always connected (Push, security)

BlackBerry Widgets

Widgets are based on the W3C widget specification, and are standalone applications created with HTML, CSS and JavaScript. They are hybrid applications that combine a HTML user interface and Java API access. Widgets use BlackBerry APIs in a secure, manageable container, and are distributed in the same way as native apps in BlackBerry App World. However, widgets are only available in BlackBerry Device Software 5.0 and above.

There are several widget APIs available, allowing developers to use application and system events, push services (consumer and corporate), identity info (phone numbers, PIN, email addresses) and personal info (search, edit email, calendar, tasks, notepad, contacts etc).

Widgets can be extended by Java developers, who can create custom JS extensions to provide access to any of the existing 20,000+ Java APIs. In addition, RIM is continuing to add new BlackBerry Widget APIs.

RIM advise that if you are considering creating a widget:

  • Extensions are coded in Java
  • Debugging these can be tricky, though they are developing debugging tools
  • Requires Smartphone OS 5.0+

However, there are advantages in making a widget – many of which are shared with the BlackBerry Browser Apps:

  • Potential shorter development and testing times
  • Easier to find developers (common technologies in web developers)
  • No deployment issues
  • Has Smartphone integration (can launch phone, email, maps via built in masks)
  • Always on, always connected (Push, security)
  • Easy user interface development
  • Access to API for common tasks
  • Ability to extend API
  • Decoupled from Smartphone OS
  • Can be deployed in BlackBerry Appworld
  • Tools to develop available in Eclipse and Visual Studio

BlackBerry Java Applications

The most customisable methodology for a BlackBerry Application is a BlackBerry Java Application. These apps have broad capability and have been native to the BlackBerry platform since 2002.

The Java development platform gives access to more advanced location based services, multimedia (embedded video capturing, streaming, increased camera control, media key events), and additional app integration (customise screen with text and images, embeddable browser, multiple phone line access, multiple address book support, link to BlackBerry Smartphone contacts.)

Java development gives an application:

  • Highest degree of customisation (animation, touch gestures, screen layouts, UI placement)
  • Rapid execution
  • Direct access to the newest APIs
  • Ability to optimise performance

However, RIM advise developers that as these are the most complicated deployments, developers and creators should consider:

  • Longer development and testing periods required
  • Steeper learning curve
  • APIs are connected to the Smartphone OS

Common Features

Each of the methodologies have network access to the BlackBerry Internet Service, BlackBerry Enterprise Server and encryption, additionally, BlackBerry Push and HTTP Post functionality. Offline storage is available, but the implementation differs between methodologies.

Best Solution

When deciding on which of the methodologies will be most suitable for your BlackBerry application, consider your development team and their skillset. Plan out your timescales and features, remembering you cannot have everything.

Each application will have constraints. If cost is your main constraint, widgets and browser applications will be more suitable, same for if you are turning the application round on a shorter schedule. However, if you want a feature rich app with good scope and reach, then the Java application is the best solution.

RIM suggest that browser applications are the easiest, but have reduced flexibility, and the Java applications have increased learning curves, but are the ultimate solution and very flexible. Widgets are a halfway point, and this is mirrored in the skills required to create them.


One Response to “3 Types of BlackBerry App”

  1. [...] 3 Types of BlackBerry App [...]