Blackberry BROWSER VERSION 4.7.0 User Manual

BlackBerry Browser
Version: 4.7.0
Fundamentals Guide
SWDT432285-432285-1205031032-001
Contents
1 Understanding the BlackBerry device browsing environment............................................................................................. 3
Characteristics of BlackBerry devices........................................................................................................................................... 3
BlackBerry Device Software version considerations.......................................................................................................... 4
Trackwheel.............................................................................................................................................................................. 5
Touch screen........................................................................................................................................................................... 5
Keyboard.................................................................................................................................................................................. 6
Network gateways and BlackBerry Browser configurations...................................................................................................... 8
The BlackBerry MDS Connection Service network gateway............................................................................................. 9
The BlackBerry Internet Service Browsing network gateway............................................................................................ 10
WAP network gateways......................................................................................................................................................... 11
2 BlackBerry Browser content support and features................................................................................................................. 13
BlackBerry Browser content support............................................................................................................................................ 13
BlackBerry Browser features.......................................................................................................................................................... 14
Network gateway features............................................................................................................................................................. 15
3 Content and network management in the BlackBerry Browser........................................................................................... 16
Content rendering........................................................................................................................................................................... 16
Browser content views........................................................................................................................................................... 16
Style sheets and CSS support............................................................................................................................................... 17
Form support........................................................................................................................................................................... 18
Table support.......................................................................................................................................................................... 19
Images..................................................................................................................................................................................... 20
Support for media streaming................................................................................................................................................ 21
Support for web feeds............................................................................................................................................................ 21
Script processing............................................................................................................................................................................. 22
JavaScript support and DOM access................................................................................................................................... 23
Support for AJAX and the XMLHttpRequest object........................................................................................................... 24
Content navigation......................................................................................................................................................................... 24
Page navigation...................................................................................................................................................................... 24
Link behavior........................................................................................................................................................................... 25
Navigation history in the BlackBerry Browser.................................................................................................................... 26
Bookmarks in the BlackBerry Browser................................................................................................................................. 27
Content storage.............................................................................................................................................................................. 27
Content caches....................................................................................................................................................................... 27
Cookie storage........................................................................................................................................................................ 28
4 Content optimization and delivery........................................................................................................................................... 29
Content optimization by the network gateway........................................................................................................................... 29
Content transcoding.............................................................................................................................................................. 29
Content preprocessing and filtering.................................................................................................................................... 30
Image optimization................................................................................................................................................................ 30
Progressive downloading of images..................................................................................................................................... 31
Pushed content delivery................................................................................................................................................................. 31
Pushed content supported by the BlackBerry MDS Connection Service........................................................................ 32
Pushed content supported by the BlackBerry Internet Service Browsing network gateway........................................ 33
Pushed content supported by WAP network gateways..................................................................................................... 34
5 Glossary......................................................................................................................................................................................... 35
6 Legal notice.................................................................................................................................................................................. 38
Fundamentals Guide

Understanding the BlackBerry device browsing environment

Understanding the BlackBerry device browsing
1
environment
When you develop web content for the BlackBerry® Browser, you must be aware of the web standards that the BlackBerry Browser supports and determine how to develop web content that functions within those supported standards. However, to create an effective browsing experience on the BlackBerry Browser, you must understand more than just what the BlackBerry Browser supports. You must also be aware of the physical components of the wireless browsing environment in which the BlackBerry Browser exists, and how they contribute, positively and negatively, to the user's wireless browsing experience. These physical components include the following:
The BlackBerry devices: BlackBerry device models have different versions of the BlackBerry Device Software, different screen sizes, and different input methods.
The wireless network: Wireless networks possess less bandwidth than wired networks or Wi-Fi® networks. Wireless networks provide reduced data transfer rates, which results in increased network latency.
The network gateway: Network gateways connect the wireless network, over which the BlackBerry devices communicate, to the wired network, on which web servers and data systems exist. Different network gateways offer different support for content optimization and content delivery strategies. The BlackBerry Browser is designed to communicate through several network gateways.
Developing content with the wireless environment in mind can help you to work around some of the limitations inherent in wireless browsing. With a greater understanding of theBlackBerry Browser, you can make the content development decisions necessary to provide the functionality that users require, while also providing a positive wireless browsing experience.

Characteristics of BlackBerry devices

BlackBerry® devices come in a variety of sizes, shapes, and capabilities. Among the currently available BlackBerry devices that might request your content, there is a range of software and hardware. The different hardware and software characteristics of BlackBerry devices have an impact on the user's browsing experience, and might influence the decisions you make as you create content for the BlackBerry® Browser.
BlackBerry devices can differ in the following ways:
BlackBerry® Device Software version
screen size
input methods, including the navigation method (trackwheel or trackball) and the keypad (QWERTY or SureType® keypad)
The User-Agent header that accompanies every request from the BlackBerry Browser provides the BlackBerry device model number, from which you can determine the physical characteristics of the BlackBerry device, and the version of the BlackBerry Device Software that the requesting BlackBerry device is running.
3
Fundamentals Guide
Characteristics of BlackBerry devices

BlackBerry Device Software version considerations

The BlackBerry® Browser is a BlackBerry® Device Software application that is included with every BlackBerry device. The version of the BlackBerry Device Software that is running on theBlackBerry device determines what content the BlackBerry Browser supports and how the content is rendered.
Two generations of the BlackBerry Browser exist.
The first generation of the BlackBerry Browser, included with BlackBerry Device Software version 4.5 or earlier, supports simple web page presentations and wireless-specific content very well. In BlackBerry Device Software version 3.8 or later, the BlackBerry Browser provides basic JavaScript® and CSS support. In an effort to make more of the web accessible to the BlackBerry Browser, support for more complex presentation formats has been added over a number of releases. However, the first generation of the BlackBerry Browser focuses on managing and mitigating the effects of the wireless network.
The second-generation BlackBerry Browser was introduced in BlackBerry Device Software version 4.6. The BlackBerry Browser rendering agent and JavaScript engine were completely redesigned to provide much greater support of existing web standards. With full support for standards such as HTML 4.01, CSS 2.1, and DOM Level 2, the second generation of the BlackBerry Browser has the ability to render most existing web content.
You should consider the BlackBerry Browser that is included with BlackBerry Device Software version 4.6 or later as functionally distinct from the first generation of the BlackBerry Browser that is included with earlier BlackBerry Device Software versions.
When you design content for the BlackBerry device, you need to decide the version or versions of the BlackBerry Device Software to target. Keep in mind that the number of BlackBerry device users who use a first generation BlackBerry Browser to access your content is likely to be much larger than the number of users with a second generation of the browser. If you want to create content that makes use of the presentation and scripting support offered by the second generation of the BlackBerry Browser, consider also providing simplified content that targets BlackBerry device users who are browsing with a first generation of the BlackBerry Browser.
For more specific information about what is supported with each version of the BlackBerry Device Software, see the BlackBerry Browser HTML Reference, the BlackBerry Browser CSS Reference and the BlackBerry Browser JavaScript Reference.

Trackball

On BlackBerry® devices with a trackball, the trackball is the primary control for user navigation. Users can
roll the trackball to move the cursor
click the trackball to perform default actions or open a context menu
click the trackball while pressing the Shift key to select objects
BlackBerry devices with a trackball also include a Menu key that is located to the left of the trackball. Users can press the Menu key to open a full menu of available actions.
4
Fundamentals Guide
Characteristics of BlackBerry devices

Trackwheel

BlackBerry® devices that precede the BlackBerry® Pearl™ 8100 Series use a trackwheel as the primary control for user navigation. The trackwheel is located on the right side of the device.
Users can
roll the trackwheel to move the cursor vertically
roll the trackwheel while pressing the Alt key to move the cursor horizontally
click the trackwheel to select objects or open the menu

Touch screen

On BlackBerry® devices with a SurePress™ touch screen, users use a finger to interact with the applications on the device. Users type text and navigate screens by performing various actions on the touch screen.
In addition, users can click common actions on the shortcut bar that is located at the bottom of the screen. Or, users can press the Menu key, which is located to the right of the Send key, to open a full menu of available actions.
On BlackBerry devices with a touch screen, users can perform the following actions:
Action Result
touch the screen lightly This action highlights an item or places the cursor in a specific location. It is
equivalent to rolling the trackball or trackwheel to highlight an item or place the cursor.
In applications that support a full-screen view, such as BlackBerry® Maps, this action hides the banner and shortcut bar.
On the shortcut bar, this action displays a tooltip that describes the action that the icon represents.
touch the screen twice quickly On a web page, map, picture, or presentation attachment, this action zooms in to
the web page, map, picture, or presentation attachment.
click (press) the screen This action invokes an action. For example, when users click an item in a list, the
screen that is associated with the item appears. This action is equivalent to clicking the trackball or trackwheel.
On a map, picture, or presentation attachment, this action zooms in to the map, picture, or presentation attachment. On a web page, this action zooms in to the web page or follows a link.
5
Fundamentals Guide
Characteristics of BlackBerry devices
Action Result
slide a finger up or down quickly on the screen
Sliding a finger up quickly displays the next screen. Sliding a finger down quickly displays the previous screen.
When the keyboard appears, sliding a finger down quickly hides the keyboard and
displays the shortcut bar. slide a finger to the left or right quickly on the screen
This action displays the next or previous picture or message, or the next or previous
day, week, or month in a calendar. hold a finger on an item Holding a finger on the progress bar while a song or video is playing fast forwards
or rewinds the song or video.
In a text field, this action displays an empty rectangle cursor to help users position
the cursor more accurately in a text field. touch and drag an item on the screen This action moves the content on the screen in the corresponding direction. For
example, when users touch and drag a menu item, the list of menu items moves in
the same direction.
In a text field or in Month view in a calendar, this action moves the empty rectangle
cursor in the same direction. touch the screen in two locations at the same time
This action highlights the text between the two locations or the list of items, such
as messages, between the two locations. To add or remove text or items from the
selection, users can touch the screen at another location. press the Escape key This action cancels a selection.
On a web page, map, or picture, this action zooms out one level. Users can press
the Escape key twice to zoom back to the original view.

Keyboard

Users use the keyboard primarily to type text. On BlackBerry® devices with a trackwheel or trackball, users can also use the keyboard to move around a screen (for example, to move around a map). However, navigation using the keyboard should always be an alternative to navigation using the trackball or trackwheel.
BlackBerry devices with a trackwheel or trackball have either a QWERTY keyboard or SureType® keyboard. Both types of keyboard include character keys and modifier keys. Character keys send a character to the BlackBerry device and include text keys, the Menu key, and the Escape key. A modifier key alters the functionality of character keys. Modifier keys include the Shift key and the Alt key.
6
Fundamentals Guide
Characteristics of BlackBerry devices
QWERTY keyboard
The QWERTY keyboard provides users with a keyboard that is similar to the keyboard on a computer. Users type as they would on a computer keyboard except that numbers and symbols are located in different places.
To type common symbols, users press the Alt key and the appropriate character key. To type other symbols, users press the Symbol key. When users press a modifier key, a typing mode indicator appears in the upper-right corner of the screen.
SureType keyboard
BlackBerry® devices with SureType® technology integrate a traditional phone keypad and a familiar QWERTY-style keyboard with intuitive software. SureType technology is designed to predict words as users type them.
7
Fundamentals Guide
Users who have a BlackBerry device with SureType technology can type text using the SureType input method or the multi-tap input method.

Network gateways and BlackBerry Browser configurations

When users use SureType technology, they press the letter key for each letter in a word once. For example, to type run, users would press the ER key once, the UI key once, and the BN key once. As users type, a list of possible letter combinations and words appears on the screen. SureType technology selects letter combinations or words from the list based on context. If users type a word or letter combination (for example, a web address or an abbreviation) that SureType technology does not recognize, users use the list that appears on the screen to build the word letter by letter. SureType technology is designed to "learn" new words or letter combinations that users type and add them to a custom word list.
When users use the multi-tap input method, they press a letter key once to type the first letter on the key and twice to type the second letter. For example, to type run, users would press the ER key twice, the UI key once, and the BN key twice.
SureType technology is the default input method for most fields. Multi-tap is the default input method for phone number fields and password fields. If users switch from using SureType technology to using the multi-tap input method, a typing indicator appears in the upper-right corner of the screen to indicate the current input method.
Network gateways and BlackBerry Browser configurations
The BlackBerry® Browser can be configured to connect to the wireless network through one of three network gateways.
Network gateway Accessed by Protocol
BlackBerry MDS Connection Service BlackBerry Browser configuration HTTP/IPPP BlackBerry Internet Service Browsing Internet Browser configuration HTTP/IPPP
8
Fundamentals Guide
Network gateway Accessed by Protocol
WAP-compliant gateway WAP Browser configuration WAP 1.2 and WAP 2.0
Users can choose the network gateway that the BlackBerry Browser communicates with by choosing the configuration that is associated with that network gateway. For example, users might choose the WAP Browser configuration to access bookmarks provided by their service provider, the Internet Browser configuration to access Internet content, and the BlackBerry Browser configuration to access their organization's intranet.
Users can specify the settings for each configuration to help optimize the performance. For example, to ensure the correct operation of an organization's web application, users might want to turn on support for JavaScript® for the BlackBerry Browser configuration; however, to download content more quickly over the Internet for personal use, users might want to disable JavaScript for the Internet Browser configuration.
On Wi-Fi®-enabled BlackBerry devices, users can choose to use the Hotspot Browser to browse the Internet when they are in a Wi-Fi hotspot.
Network gateways and BlackBerry Browser configurations

The BlackBerry MDS Connection Service network gateway

The BlackBerry® MDS Connection Service is designed to provide users with secure access to their organization's intranets, and access to the Internet. The BlackBerry MDS Connection Service is a component of the BlackBerry® Enterprise Server that exists on the organization's network behind a firewall.
The BlackBerry MDS Connection Service acts as a proxy for the BlackBerry® Browser, and makes requests on behalf of the BlackBerry Browser. The BlackBerry MDS Connection Service optimizes the content in the response, to enhance network efficiency and improve display on smaller screens, before it sends the content to the BlackBerry Browser .
The BlackBerry Browser accesses the BlackBerry MDS Connection Service network gateway using the BlackBerry Browser configuration. The BlackBerry Browser configuration communicates with the BlackBerry MDS Connection Service using HTTP/ IPPP.
To browse the Internet or an intranet through the BlackBerry MDS Connection Service network gateway, users must specify the BlackBerry Browser configuration in the Browser Configuration settings.
Because the BlackBerry MDS Connection Service is a component of the BlackBerry Enterprise Server, administrators can specify a number of settings for the BlackBerry Browser configuration. For example, to help control the amount of bandwidth used, administrators can specify whether the BlackBerry Browser supports JavaScript®.
BlackBerry MDS Connection Service security
To provide access to a requested web page, the BlackBerry® MDS Connection Service opens a connection to the Internet from within the organization . The BlackBerry MDS Services can use SSL and TLS protocols to encrypt communication over the Internet between the BlackBerry® Enterprise Server and the web server.
9
Fundamentals Guide
Communication between the BlackBerry MDS Connection Service and the BlackBerry® Browserconfiguration is always encrypted with the same Triple DES that is used for all communication between the BlackBerry Enterprise Server and the BlackBerry device.
The BlackBerry MDS Connection Service and the BlackBerry Browser configuration support HTTPS in the following modes:
End-to-end mode: HTTP communication is encrypted using SSL or TLS for the entire connection between the BlackBerry device and the originating content server. Communication over the wireless network between the BlackBerry device and the BlackBerry MDS Connection Service is also encrypted using Triple DES encryption.
Proxy mode: The BlackBerry MDS Connection Service performs SSL handshaking and sets up the SSL connection on behalf of the BlackBerry device. Communication over the wireless network between the BlackBerry device and the BlackBerry MDS Connection Service is not encrypted using SSL, but it is encrypted using Triple DES encryption. Communication over the Internet between the BlackBerry MDS Connection Service and the content server is encrypted using SSL or TLS.
The BlackBerry MDS Connection Service network gateway supports several types of network authentication, including Basic authentication, NTLM, and Kerberos™.
To restrict wireless network access, administrators can turn the BlackBerry MDS Connection Service on or off for specific users or user groups. Administrators can also specify policies to control the organization's servers that users can access and the servers that can open push connections to the BlackBerry MDS Connection Service.
Network gateways and BlackBerry Browser configurations

The BlackBerry Internet Service Browsing network gateway

Wireless service providers can use the BlackBerry® Internet Service Browsing network gateway to offer BlackBerry device users access to the content optimization and compression features provided by the BlackBerry® Infrastructure without using the BlackBerry® Enterprise Server.
The BlackBerry Internet Service Browsing network gateway acts as a proxy for the BlackBerry® Browser, and makes requests on behalf of the BlackBerry Browser. The BlackBerry Internet Service Browsing network gateway optimizes the content in the response to enhance network efficiency and improve display on the smaller screens before it relays the content to the BlackBerry Browser.
The BlackBerry Browser accesses the BlackBerry Internet Service Browsing network gateway using the Internet browser configuration. The Internet browser configuration communicates with the BlackBerry Internet Service Browsing network gateway using HTTP/IPPP.
To browse the Internet through the BlackBerry Internet Service Browsing network gateway, users must specify the Internet browser configuration in the Browser Configuration settings.
To use the Internet browser configuration, a BlackBerry device user requires a service book that is issued to the BlackBerry device by the BlackBerry® Provisioning System.
BlackBerry Internet Service Browsing security
The BlackBerry® Internet Service Browsing network gateway does not support Triple DES encryption and it is not designed to access intranets that are protected by firewalls; however, it does permit users to access secure sites using HTTPS. The BlackBerry Internet Service Browsing network gateway supports SSL encryption.
10
Fundamentals Guide
The BlackBerry Internet Service Browsing network gateway supports HTTPS in end-to-end mode. HTTP communication is encrypted using SSL or TLS for the entire connection between the BlackBerry device and the content server.
Network gateways and BlackBerry Browser configurations

WAP network gateways

WAP network gateways are hosted by wireless service providers. WAP network gateways must support WTP-level segmentation and reassembly. Proprietary WAP extensions are not supported.
The BlackBerry® Browser accesses WAP network gateways using the WAP Browser configuration. To browse the Internet through a WAP network gateway, users must specify the WAP Browser configuration in the Browser Configuration settings.
The WAP Browser configuration supports the following protocols:
Protocol Description
WAP 1.2.1 The WAP Browser configuration caches the WSP headers to decrease the transmission time of requests.
The WAP Browser configuration sends common HTTP headers to the WAP network gateway when it sets up the WAP connection. In subsequent requests, the WAP Browser configuration sends only headers that are specific to the request or that contain values that are different from the initial values.
WAP 2.0 The WAP Browser configuration sends HTTP over wTCP. The BlackBerry Browser sends the HTTP request
to a WAP 2.0 proxy, which then forwards the request to the server. The WAP network gateway determines the content types that the BlackBerry Browser can access. For example, some WAP network gateways might convert HTML content into a series of WML pages, or impose a limit on the size of content that the BlackBerry Browser can request.
For more information about WAP protocols, visit www.wapforum.org and read the specification WAP-203-WSP-20000504-a.
WAP network gateway security
WAP 1.2.1 and WAP 2.0 protocols provide different security models.
Protocol Description
WAP 1.2.1 The WAP 1.2.1 protocol uses WTLS to access secure WAP services, including WTLS Class 1 (encryption
only, no authentication) and WTLS Class 2 (encryption and server authentication). The WAP Browser configuration supports both DES (40-bit and 56-bit) and RC5 encryption (64-bit, 128-bit, and 168­bit). Communication over the wireless network between the BlackBerry®device and the WAP network gateway is encrypted using WTLS. Communication over the Internet between the WAP network gateway and the web server is encrypted using SSL or TLS.
11
Fundamentals Guide
Network gateways and BlackBerry Browser configurations
Protocol Description
The WAP network gateway decrypts data that it receives from either the BlackBerrydevice or the web server and re-encrypts it using the appropriate protocol. During the conversion from one encrypted format to another, data is briefly not encrypted at the service provider location.
The WAP Browser configuration does not support the WMLScriptCrypto library.
WAP 2.0 The WAP 2.0 protocol supports end-to-end HTTPS. Communication is encrypted using SSL or TLS
for the entire connection between the device and the content server.
The WAP Browser configuration supports PAP, which is used for authentication against RADIUS for PDP context activation on GPRS networks. PDP context activation enables data transmission between the wireless network and the BlackBerrydevice.
12
Fundamentals Guide

BlackBerry Browser content support and features

BlackBerry Browser content support and features

BlackBerry Browser content support

The following table lists the web formats that the BlackBerry® Browser supports, and the version of the BlackBerry® Device Software in which support was introduced.
Format type Content type Component Partial support in
BlackBerry Device Software version
markup HTML 4.01 3.2.1 4.6
tables 3.8 4.6 image maps 3.8 4.6
frames 4.2 4.6 CSS 2.1 3.8 4.6 SVG 3.7 — XHTML-MP 3.6 WML 3.2
scripting DOM L2 4.6
core 4.6
HTML 4.6
style 4.6
events 4.6 AJAX 4.6 JavaScript® 1.5 3.8 4.6 ECMAScript™ 262 3rd Edition 3.8 WMLScript 3.2.1
media video
WMV 4.3
h.263 4.6 audio
MP3 4.2
MP4 4.2
Full support in BlackBerry Device Software version
2
13
Fundamentals Guide

BlackBerry Browser features

Format type Content type Component Partial support in
BlackBerry Device Software version
WAV 4.2
MIDI 3.7 images
animated GIF 3.8
TIFF 3.7
BMP 3.7
JPEG 3.7
PNG 3.2.1
GIF 3.2.1
web feeds RSS 0.9, 1.0, 2.0 4.2
RSS enclosures 4.3 Atom™ 4.2
Full support in BlackBerry Device Software version
BlackBerry Browser features
Category Feature Included in BlackBerry Device
Software version
navigation wireless service provider customizable bookmarks 3.8
one-click link navigation 3.7 bookmarks 3.2 navigation history list 3.2
content storage cookie cache 3.2
pushed content cache 3.6
content rendering media streaming 4.3
progressive image rendering 4.2.2 page view 4.2.1 column view 3.2
wireless-friendly browsing offline form submission 3.8
background downloading 3.2
14
Fundamentals Guide
Category Feature Included in BlackBerry Device
Software version
usability single browser Home screen icon 4.2
bookmarks associated with browser configurations 4.2

Network gateway features

Network gateway features
Category Feature BlackBerry MDS
Connection Service
content delivery progressive delivery supported (4.2.2 or later) supported
browser session management supported (4.1 or later) supported — PAP push applications supported — RIM push applications supported (3.6 or later) — web signal push applications supported — WAP push applications supported
content optimization image optimization supported (3.6 or later) supported
enhanced image optimization supported (4.1.5 or later) supported — content filtering supported (3.7 or later) supported — content preprocessing supported (3.7 or later) supported
security SSL/TLS encryption supported (3.6 or later) supported
WTLS encryption supported Triple DES encryption supported (3.2 or later) — Kerberos™ authentication supported (3.2 or later) — NTLM authentication supported (3.2 or later) — Password authentication protocol RADIUS for PDP supported web access restriction supported (3.2 or later)
supported
BlackBerry
Internet Service
Browsing
WAP
15
Fundamentals Guide

Content and network management in the BlackBerry Browser

Content and network management in the BlackBerry
3
Browser

Content rendering

Browser content views

The BlackBerry® Browser can display content in Column View or Page View. In BlackBerry® Device Software version 4.5 or earlier, Column View is the default view. In BlackBerry Device Software version 4.6 or later, Page View is the default view.
View Description
Column View In Column View, content is rendered vertically in a column the width of the screen. Content that exceeds
the width of the column is wrapped.
Table rows that extend beyond the width of the screen are wrapped, with the excess table cells displayed immediately below.
On devices in which framesets are supported, the frameset layout is ignored. Instead, the BlackBerry Browser displays the content of each frame vertically in the order in which they are encountered.
Page View Page View was introduced in BlackBerry Device Software version 4.2.1, for BlackBerrydevices with a
trackball. Page View renders pages on a 1024 x 768 pixel canvas, appropriate for displaying content designed for desktop computers, and scales the content to fit the width of the screen. Users can scroll to the area of interest and zoom in to view the content at a standard size. When zoomed, the content exceeds the width of the screen; users must scroll horizontally to view all of the content.
Page View is designed to display desktop-focused content in the BlackBerry Browser window. Content that is designed specifically for the BlackBerry Browser should not be displayed in Page View.
To control how the content displays on the device, the BlackBerry Browser supports the HandheldFriendly and viewport <meta> tags. To ensure that the content that is designed for the BlackBerry Browser is displayed correctly, you must add one of the following tags to the <head> element of your HTML content:
<meta name="HandheldFriendly" content="true" >
<meta name="viewport" content="width=device-width" >
16
Fundamentals Guide
Content rendering

Style sheets and CSS support

The BlackBerry® Browser supports inline, internal, or external CSS style definitions.
The level of support for style sheets in the BlackBerry Browser depends on the version of BlackBerry® Device Software that the BlackBerry device is running.
BlackBerry Device Software version
Description
3.8 to 4.5 In BlackBerry Device Software version 3.8 to 4.5, the BlackBerry Browser provides partial support for WAP CSS.
The BlackBerry Browser supports the following CSS models:
Box model
Border properties (introduced in BlackBerry Device Software version 3.8)
Padding properties (introduced in BlackBerry Device Software version 4.3)
Colors and background
Fonts (excluding font-variant)
Positioning
The height and width properties (introduced in BlackBerry Device Software version
3.8)
Text (text-align, text-decoration properties only)
WAP marquee extensions
WAP input extensions
In BlackBerry Device Software version 4.5 or earlier, users can turn off support for style sheets in the BlackBerry Browser options, which prevents the BlackBerry Browser from processing any style data, whether inline, internal, or external.
4.6 or later In BlackBerry Device Software version 4.6, the BlackBerry Browser provides full support for CSS 2.1, excluding pseudo-elements and dynamic pseudo-classes, system fonts, and generated content.
The BlackBerry Browser supports the following CSS models:
Box model
Border properties
Margin properties
17
Fundamentals Guide
Content rendering
BlackBerry Device Software version
Description
Padding properties
Colors and background
Fonts
Lists
Positioning
Text
Visual effects
WAP input extensions
With enhanced CSS support and access to the DOM using JavaScript®, the BlackBerry Browser supports most dynamic HTML effects, such as hiding or displaying web page content dynamically.
In BlackBerry Device Software version 4.6 or later, users can not specify support for style sheets; style sheets are always supported.
For a complete list of the supported CSS properties and the BlackBerry Device Software version in which support was introduced, see the BlackBerry Browser CSS Reference.

Form support

Forms work very well in the BlackBerry® Browser. Entering text is very simple on BlackBerry devices, and users can easily navigate through the form with any of the navigation methods available on BlackBerry devices.
On BlackBerry devices with a trackball, users can position the cursor over the form control. Users must click the trackball to activate the form control that has focus.
On BlackBerry devices with a trackwheel, users can use the trackwheel to skip sequentially through the form controls. Users must click the trackwheel to activate the form control that has focus.
The level of support for forms in the BlackBerry Browser depends on the version of the BlackBerry® Device Software that the BlackBerry device is running.
18
Fundamentals Guide
Content rendering
BlackBerry Device Software version
Description
3.7 to 4.5 In BlackBerry Device Software version 3.7 to 4.5, the BlackBerry Browser provides supports for basic form elements, including partial support for the <form>, <input>, <select>, <textarea>, and <option> elements. Support for <optgroup> is available in version
3.8 or later.
As of BlackBerry Device Software version 4.2, all input types are supported. In earlier versions, <input type="file"> is not supported.
Support for JavaScript® version 1.5 is available in BlackBerry Device Software versions 3.8 to
4.5. You can create simple scripts to perform some client-side validation of form fields.
4.6 or later In BlackBerry Device Software version 4.6 or later, the BlackBerry Browser provides full support for forms. Support was introduced in BlackBerry Device Software version 4.6 for the following elements:
<button>
<fieldset>
<label>
<legend>
With full DOM Level 2 and JavaScript support, any type of client-side form validation is possible.

Table support

The level of support for tables in the BlackBerry® Browser depends on the version of the BlackBerry® Device Software that the BlackBerry device is running.
BlackBerry Device Software version
3.7 or earlier Tables are not supported in the BlackBerry Browser in BlackBerry Device Software version 3.7
3.8 to 4.5 In BlackBerry Device Software versions 3.8 to 4.5, the BlackBerry Browser provides basic
Description
or earlier.
support for tables, including support for the <table>, <tr>, <td>, and <th> elements.
19
Fundamentals Guide
Content rendering
BlackBerry Device Software version
Description
Basic layout attributes for tables are supported. You can span rows and columns or adjust padding or spacing between table cells. Content in table cells is always wrapped; the nowrap attribute is not supported.
In BlackBerry Device Software version 4.5 or earlier, users can turn off support for tables in the BlackBerry Browser options.
4.6 or later In BlackBerry Device Software version 4.6 or later, the BlackBerry Browser provides full support
for tables, including support for the <thead>, <tbody>, and <tfoot> container elements.
In BlackBerry Device Software version 4.6 or later, users can not specify support for tables; tables are always supported.
The view that the user specifies has an impact on how tables appear on the BlackBerry device.
In Column View, table rows that exceed the width of the device screen wrap to fit the width of the screen, and the row cells are stacked vertically.
In BlackBerry Device Software version 4.6 or later, the BlackBerry Browser ignores table layout in Column View. Each table cell is rendered on a new line.
In Page View, tables are rendered as defined. Users might be required to scroll horizontally to view the entire width of the table.
Design tables to fit the screen dimensions and use the HandheldFriendly <meta> tag to prevent scaling. Always test tables thoroughly to make sure they display as intended on the BlackBerry device in all BlackBerry Browser views.
For a complete list of the supported table elements and attributes and the BlackBerry Device Software version in which support was introduced, see the BlackBerry Browser HTML Reference.

Images

The BlackBerry® Browser renders the following image types:
BMP
GIF, including animated GIFs
JPEG
PNG
TIFF
20
Fundamentals Guide
In Column View, images are scaled to fit the width of the BlackBerrydevice screen, less 5 pixels for the scrollbar. If users want to view the full image, they can click the Full Image menu item to download it. If the browser is communicating with the network gateway, the network gateway sends the image to the browser without scaling it. However, network gateways typically have a size limit for images.
Users can specify a limit for the number times that animations can loop. Animated GIFs can repeat either the default value of 10 times or the number of times specified in the GIF repeat value.
In BlackBerry® Device Software version 4.2.2 or later, users can specify the image quality for images rendered in the BlackBerry Browser. The lower the image quality, the faster the image is rendered.
Content rendering
Progressive image rendering
In BlackBerry® Device Software version 4.2.2 or later, the BlackBerry® Browser renders images progressively. When the browser retrieves a web page, a low quality version of each image displays quickly. After the entire web page is downloaded, the browser retrieves the additional image file segments from the network gateway. The low quality images are enhanced as the additional image file segments arrive, until they meet the image quality that is specified by the user.
Progressive image rendering is available with the following browser configurations and the associated network gateways:
The BlackBerry Browser configuration and the BlackBerry MDS Connection Service network gateway
The Internet Browser configuration and the BlackBerry Internet Service Browsing network gateway

Support for media streaming

In BlackBerry® Device Software version 4.3 or later, the BlackBerry® Browser supports streaming of audio and video files. The BlackBerry Browser supports the following media types:
Video: WMV, h.263
Audio: MIDI, MP3, MP4, Wav
The browser supports media streaming over the HTTP or RTSP protocols.
When a user clicks a link to an audio or video file, the user can open the file, save it to the media card or device memory, or cancel the download. If the user opens the file, the BlackBerry Browser opens the media application and the file begins streaming. When the content is finished streaming, the user can close the media application to return to the browser. Streamed content is not saved; users cannot replay media unless they download it again.
The network gateway might limit the size of the file that can be streamed. There are no size limitations if the content is streamed over a Wi-Fi® connection.

Support for web feeds

In BlackBerry® Device Software version 4.2 or later, the BlackBerry® Browser supports the following web feed formats:
21
Fundamentals Guide
RSS 0.9, 1.0, and 2.0
Atom™
The browser lists web feed items by date, and lists unread items in bold. When the user opens an item, the content appears in a new page. The BlackBerry Browser does not act as an aggregator, and it does not store web feed content except as cached data. Users can add web feeds to the bookmark list.
In BlackBerry Device Software version 4.2.2 or later, the BlackBerry Browser supports RSS enclosures, designed to provide users with access to media files that are located at the URLs specified in the <enclosure> tag. In earlier versions, these links were ignored by the browser. To access the media file, users can click the link in the web feed content.
The browser displays media files based on their type. If a URL links to an image file, the browser displays the image in the browser window. If the URL links to an audio or video file, users can open the file, or save the file to the media card or device memory. If the user opens the file, the browser opens the media application and begins streaming the content. Streamed content is not saved; users cannot replay media unless they download it again.

Script processing

Script processing
When the BlackBerry® Browser parses a web page, it processes JavaScript® as it is encountered. Scripts can be inline or external.
When the browser encounters a <script> element, it pauses web page rendering activities while it retrieves and then executes the script. You can use the defer attribute to prevent the script from being processed until it is called. Unless the initial web page content relies on the outcome of a script, you should use the defer attribute.
In BlackBerry® Device Software version 4.5 or earlier, if the BlackBerry Browser encounters any script that produces common dynamic HTML effects, the browser executes without error but produces no visual effect. JavaScript that is not supported simply produces an error, which, unless handled within the script, prevents the script from executing any further.
Script processing behavior varies slightly, depending on the network gateway the browser uses to access the content.
If the content is accessed through the BlackBerry MDS Connection Service network gateway or the BlackBerry Internet Service Browsing network gateway, the network gateway typically pre-compiles the JavaScript before sending it to the BlackBerry device. The server can compile the script faster than the device can. When the server compiles the script, it can reduce the time required for the browser to process the script, thereby reducing the length of time that the browser is blocked from rendering the web page.
One obstacle to server-side preprocessing of the JavaScript occurs when an eval() function is used to execute JavaScript code. The network gateway cannot precompile the contents of an eval() function. Instead, the BlackBerry Browser must compile the code.
If the content is accessed through a WAP network gateway, the browser compiles the code and reads any auxiliary JavaScript support libraries that are referenced from the web page.
22
Fundamentals Guide
Script processing
The BlackBerry Browser supports a number of compression algorithms. In general, compressing content targeting the BlackBerry Browser offers little benefit in terms of reducing data transfer speeds or network traffic; if the content is accessed through the BlackBerry MDS Connection Service network gateway or the BlackBerry Internet Service Browsing network gateway, the network gateway unpacks the script before it compiles and recompresses the script for efficient transfer over the wireless network. If you use compression algorithms that contain the eval() function, the algorithms can hinder performance; the network gateway will unpack and recompress the script for transfer, but since the network gateway cannot precompile the enclosed code, the benefit derived from precompiling on the server side is reduced.

JavaScript support and DOM access

The level of JavaScript® support in the BlackBerry® Browser depends on the version of the BlackBerry® Device Software that the BlackBerry device is running.
BlackBerry Device Software version
Description
3.8 to 4.5 In BlackBerry Device Software versions 3.8 to 4.5, the BlackBerry Browser supports JavaScript version 1.3, subsets of JavaScript versions 1.4 and 1.5, and the ECMA-262 ECMAScript™ Language Specification.
In addition to the built-in JavaScript objects, BlackBerry Device Software versions 3.8 to 4.5 support the following objects:
Blackberry
BlackberryLocation (introduced in BlackBerry Device Software version 4.1)
Document
Form
History
Navigator
Screen
Window
4.6 or later In BlackBerry Device Software version 4.6, the browser's JavaScript engine was redesigned to provide much greater access to the DOM. The BlackBerry Browser supports most DOM Level 2 specifications, including full support for the following specifications:
DOM Level 2 Core
DOM Level 2 HTML
DOM Level 2 Styles
23
Fundamentals Guide

Content navigation

BlackBerry Device Software version
For more information about the BlackBerry Browser's JavaScript implementation, see the BlackBerry Browser JavaScript Reference.
Description
DOM Level 2 Events
The BlackBerry Browser also provides partial support for DOM Level 3 Events, including the KeyboardEvent and TypeEvent objects.

Support for AJAX and the XMLHttpRequest object

The BlackBerry® Browser introduced support for the XMLHttpRequest object in BlackBerry® Device Software version 4.6. You can use the XMLHttpRequest object to transfer data between the BlackBerry Browser and the web server without reloading the entire web page. You can use this object to send and retrieve XML, HTML, plain text, or other data types in the background. Because access to the DOM is also available, you can update the web page when new data or content is retrieved to create extremely responsive and dynamic web pages.
The BlackBerry Browser supports synchronous requests (the JavaScript® engine is blocked until it receives a response from the server) and asynchronous requests (the JavaScript engine can process other JavaScript functions while it awaits a response). However, because of the slower data transfer rates in a wireless browsing environment, requests made by this object should almost always be asynchronous.
The XMLHttpRequest object can help to reduce the perceived latency that marks wireless browsing. Because requests are made in the background, the user can continue to work with the current web page while new data is retrieved. Because smaller amounts of data are parsed, the BlackBerry Browser can render modifications to the web page quickly.
Content navigation

Page navigation

Users can navigate through web pages in the BlackBerry® Browser differently depending on the BlackBerry device's input methods. The BlackBerry Browser also includes shortcut keys for navigation operations.
Input method Description
trackwheel The trackwheel is primarily designed to scroll vertically. To scroll horizontally, the BlackBerry
device user must press the Alt key while they roll the trackwheel.
24
Fundamentals Guide
Content navigation
Input method Description
When the user rolls the trackwheel, the focus on the page moves from link to link.
To follow a link, the user clicks the trackwheel.
trackball The trackball is designed to provide two-dimensional navigation, similar to desktop
browsers. The trackball controls a cursor that appears on the screen.
When the user rolls the cursor over a link, the cursor image changes to indicate a clickable area.
To follow a link, the user clicks the trackball.

Link behavior

The BlackBerry® Browser identifies links using a dotted underline if no styles are applied, or if the user turns off style sheet support. To follow links, users can click the trackball or trackwheel, or highlight the link and click the Get Link menu item.
The BlackBerry Browser can create links that can integrate with other BlackBerry device applications. When the BlackBerry Browser renders the content, it scans the content for patterns that appear to be telephone numbers or email addresses, and creates links that will open the phone or email application. If necessary, you can override this behavior by adding the following meta tag to your document:
<meta http-equiv="x-rim-auto-match" content="none">
The BlackBerry Browser supports the following link types:
Link type Description
web page links On a web page, users scroll to links by rolling the trackball or trackwheel. image maps In the BlackBerry Browser, hotspot regions within the image are denoted with a dotted line.
On BlackBerry devices with a trackwheel users can navigate from link to link within the image. When the appropriate hotspot is selected, users can click the trackwheel to follow the link.
On BlackBerry devices with a trackball users can move the cursor to the hotspot and click the trackball to follow the link.
phone links The BlackBerry Browser supports the following types of phone links:
WTAI Make Call links (URI form):
<a href="wtai://wp/mc;14165551212">Call office</a>
25
Fundamentals Guide
Link type Description
phone links in I-mode format:
<a href="tel:14165551212">Call office</a>
Direct Connect links on iDEN® networks:
<a href="dc:234*234*234">Call office</a>
CTI:
<a href="cti:333333">Call office</a>
When users click a phone link, the phone application opens and users are prompted to confirm whether or not to proceed with the call.
email links The BlackBerry Browser supports the following types of email links:
standard email mailto: format:
<a href="mailto:jane.doe@blackberry.com">Email Jane</a>
PIN messaging:
<a href="PIN:1234a567">send pin message to Jane</a>
Content navigation
When users click an email link, the Compose Email dialog box appears and users are prompted to confirm whether or not to proceed.

Navigation history in the BlackBerry Browser

The BlackBerry® Browser maintains a list of recently visited web pages. When the user navigates to a web page, the browser adds the URL of that web page to the navigation history list.
In BlackBerry® Device Software version 4.3 or later, the BlackBerry Browser implements the navigation history in a dedicated history page in which recently viewed web pages are organized by date and domain. In earlier versions, visited web pages are listed chronologically from most recent to oldest.
When the navigation history list reaches the maximum number of items, the browser replaces the earliest pages with the new URLs. When the user navigates back to a previous page and selects a new link from that page, the browser removes any URLs after that web page in the history list and the URL of the selected page becomes the last item in the navigation history list.
Items in the navigation history list might be removed for the following reasons:
If memory on the device is low, the browser removes items from the navigation history list to free memory.
Users might delete items from the list. Users can delete a single item in the navigation history list, all items for a domain, or all items for a day. Users can clear the navigation history list using the BlackBerry Browser Cache Options.
26
Fundamentals Guide
If a user does not use a predefined link to navigate to a WML page (for example, the user does not use a bookmark or the Go To dialog box), or if a WML page has a newcontext attribute defined, the browser clears the navigation history list before it displays the WML page. This behavior is required to conform to WML security specifications.
The web pages that are listed in the navigation history list are specific to the browser configuration in which the user viewed the web pages. When the browser displays web pages from the history, the browser uses the same browser configuration in which the web pages were originally displayed. For example, if the user visits a web page using the Internet Browser configuration, then visits a second web page using the WAP browser configuration, if the user navigates back to the first web page, the browser uses the Internet Browser configuration to display the web page.

Content storage

Bookmarks in the BlackBerry Browser

The BlackBerry® Browser provides bookmark support that combines the functionality that is typical of desktop browsers with features that are designed for the wireless environment. Users can add bookmarks for any web site that they visit, they can organize their bookmarks in a hierarchy of folders, and they can move or copy bookmarks between folders. Users can edit the title and URL of bookmarks, and they can search for and delete specified bookmarks.
Bookmarks can be used to access content even when users are outside a wireless coverage area. Bookmarks in the BlackBerry Browser provide the following features specific to wireless browsing:
Offline bookmarks: When users add a bookmark, they can make the bookmark available offline. The content and URL of the web page are saved. Offline bookmarks are maintained even if the BlackBerrydevice is reset.
Automatic synchronization of content: When a user specifies automatic synchronization of a bookmark, the BlackBerry Browser checks for new content at a specified interval, and downloads the new content directly to the cache.
A bookmark for a web page is associated with the browser configuration in which the web page was displayed when the bookmark was added. When the user clicks the bookmark, the BlackBerry Browser uses the browser configuration associated with the bookmark, regardless of the browser configuration the user is currently using, and communicates with the server using the same network gateway.
Web pages that the user views frequently can be saved to the message list for quick access.
Users can back up their bookmarks using the BlackBerry® Desktop Software, so that when they update their devices with new applications, their bookmarks are retained.
Content storage

Content caches

The BlackBerry® Browser maintains caches to store content based on the data type.
27
Fundamentals Guide
Content storage
Cache Description
content cache This cache stores rendered pages and unprocessed data. It contains all the data
that is cached as a result of normal browsing activity. pushed content cache This cache stores content that is pushed to the BlackBerrydevice. cookie cache This cache stores cookies that are assigned to the BlackBerry Browser by web pages
that the user visits.
The BlackBerry Browser respects cache control directives, such as Expires, Max-Age, and Cache-Control, that web servers can send in responses. Whenever possible, the browser loads requested content from the cache to help reduce network activity.
The pushed content cache and cookie cache are saved in persistent storage, so that content and cookies are maintained when the BlackBerry device is turned off. The user can clear these caches manually using the BlackBerry Browser Cache Options.

Cookie storage

The BlackBerry® Browser maintains a cache to store cookies. The browser provides cookie support based on the Netscape® format for expiry dates (Expires=Weekday, DD-Month-YY HH:MM:SS GMT).
The cookie cache is saved in persistent storage, so cookies remain in the cache after the BlackBerry Browser session closes and when the BlackBerry device is turned off. However, cookies might be removed before the expiry date if the user manually clears the cookie cache using the BlackBerry Browser Cache Options.
In organizations with theBlackBerry® Enterprise Server, if the JavaScript® support option is turned off for the browser, the BlackBerry MDS Connection Service can be configured to store cookies on behalf of the BlackBerry Browser. If JavaScript support is turned on, then the BlackBerry MDS Connection Service forwards cookies to the BlackBerry Browser so that scripts can access them.
28
Fundamentals Guide

Content optimization and delivery

Content optimization and delivery
4

Content optimization by the network gateway

The BlackBerry® MDS Connection Service and the BlackBerry Internet Service Browsing network gateways are specifically designed to deliver content to the BlackBerry® Browser. To help maximize efficiency and minimize the bandwidth requirements of content that is sent over the wireless network, these network gateways use optimization techniques unique to the BlackBerry® Infrastructure.
The BlackBerry MDS Connection Service and the BlackBerry Internet Service Browsing network gateways optimize content in the following ways:
by reading the existing content in the BlackBerry Browser cache to determine if requested content is already stored on the device
by preprocessing requested content and filtering out unsupported or unnecessary markup or resources
by converting images into an appropriate format for display on the BlackBerry device, reducing the color depth of images, and scaling images for display on a small screen size
by compressing content for efficient delivery over the wireless network
Some WAP network gateways might optimize content and might convert HTML to XHTML or limit the size of images. WAP network gateways are not designed for a particular user agent, and therefore cannot offer the same level of optimization for the BlackBerry Browser as the BlackBerry MDS Connection Service or the BlackBerry Internet Service Browsing network gateways. Content delivery times are typically slower over WAP network gateways. WAP network gateways do not remove unsupported elements before they send the content. As a result, the BlackBerry Browser must parse more content on the BlackBerry device, which increases the time it takes to render the content.

Content transcoding

The BlackBerry® MDS Connection Service and BlackBerry Internet Service Browsing network gateways transcode data into formats that are more suitable for sending over the wireless network and for rendering in the BlackBerry® Browser.
Data type Description
markup languages Markup languages are transcoded in the following ways:
HTML and XHTML are simplified and transcoded into a format similar to WBXML.
WML is transcoded into WMLC.
SVG is transcoded into PME, a proprietary binary file format that BlackBerry devices can render.
29
Fundamentals Guide
Data type Description
scripts JavaScript® (internal or external) is transcoded into JavaScript bytecode.
WMLScript is transcoded into compiled WMLScript.
images All .gif files are transcoded into .png file format.
If the BlackBerry device does not support native .jpg files, .jpg files are converted to .png file format.
Java® applications JAR files are converted into .cod file format.
Content optimization by the network gateway

Content preprocessing and filtering

The BlackBerry® MDS Connection Service and the BlackBerry Internet Service Browsing network gateways can check the content type that a BlackBerry device supports based on the version of the BlackBerry® Device Software that the device is running. The network gateway preprocesses the HTML, removes any unsupported elements or attributes, and sends the HTML to the BlackBerry device as it is processed; it does not wait until all the HTML is completely processed. The network gateway retrieves any images from the content server while it preprocesses the HTML.
The network gateway reads the browser configuration settings on the BlackBerry device to check if the user has turned off support for markup, such as tables, or external resources, such as JavaScript®, style sheets, or embedded media. If the network gateway finds that support for a resource is turned off, it does not retrieve the resource and does not send it over the wireless network to the device, to minimize the use of bandwidth.

Image optimization

The BlackBerry® MDS Connection Service and the BlackBerry Internet Service Browsing network gateways check the physical characteristics of the destination BlackBerry device, and scale the image and reduce the color depth as appropriate.
Property Description
image size To reduce the use of bandwidth and improve display, the network gateway scales images. When
the network gateway delivers content for display in Page View, the network gateway scales images proportionally with the content.
When the network gateway delivers content for display in Column View, the network gateway scales images in the following ways:
Horizontal scaling: Images are scaled to fit the width of the BlackBerry device screen, less 5 pixels for the scrollbar.
Vertical scaling: Images are scaled to a maximum height of twice the screen height.
30
Fundamentals Guide
Property Description
The network gateway maintains the aspect ratio when it scales images.
Users can download the full image. The BlackBerry® Browser sends a secondary request to the network gateway to deliver the image in its original form, with no optimization.
image color depth The BlackBerry MDS Connection Service and the BlackBerry Internet Service Browsing network
gateways reduce the color depth of the image to match the number of colors that the destination BlackBerry device supports. This results in smaller file sizes and minimizes the use of bandwidth.
Enhanced image optimization is included in the BlackBerry MDS Connection Service network gateway (version 4.1.3 or later) and the BlackBerry Internet Service Browsing network gateway. Enhanced image optimization is designed to provide an additional 15 to 20% size reduction. Higher quality images can be sent to the BlackBerry device without an increase in the use of bandwidth. Enhanced image optimization applies only to GIF, PNG, and JPEG image formats.
Users with BlackBerry devices running BlackBerry® Device Software version 4.2.1 or later can specify the level of quality as low, medium, or high for images sent to the BlackBerry device. For BlackBerry devices running earlier versions of the BlackBerry Device Software, the network gateway sets the image quality as medium.

Pushed content delivery

Progressive downloading of images

The BlackBerry® MDS Connection Service network gateway (version 4.1.3 or later) and the BlackBerry Internet Service Browsing network gateway support progressive downloading of images. When the network gateway compresses an image, it also divides the file into segments. It sends the file segments to the BlackBerry® Browser incrementally.
As the web page is rendered in the BlackBerry Browser, low quality placeholder versions of the images render quickly. After the entire page is rendered, the browser receives the additional image file segments. As the additional file segments arrive, the placeholder images are enhanced until the images meet the image quality that is specified by the user.
Pushed content delivery
You can notify users that new content is available or, depending on the network gateway, you can push new content directly to the BlackBerry® device.
The level of support for pushing content depends on the network gateway.
BlackBerry® MDS Connection Service: Among the three network gateways, the BlackBerry MDS Connection Service offers the most support for pushed content delivery. Content is pushed directly to the BlackBerrydevice and is stored in a dedicated cache for pushed content. You can develop the push service to place an icon on the Home screen (the icon changes to notify the user of new content), to send the content to the message list (that appears like any other message), or to deliver the content directly to the cache without any user notification. When the user next views the content, it is available on the BlackBerry device; the user does not need to download it.
31
Fundamentals Guide
BlackBerry Internet Service Browsing: The BlackBerry Internet Service Browsing network gateway supports pushed content delivery. Content is pushed to the BlackBerrydevice through web signals using a push/pull architecture. You can develop a web signal to place an icon on the Home screen. The icon changes to notify the user that new content is available, prompting the user to download the content.
WAP network gateways: WAP network gateways support pushed content delivery, typically of SMS or UDP messages, depending on the network. To support pushed content delivery through WAP network gateways, the WAP Push service record must be provisioned on the BlackBerrydevice. WAP Push service records are typically provisioned when a BlackBerrydevice is registered with the wireless service provider.
Pushed content delivery

Pushed content supported by the BlackBerry MDS Connection Service

The BlackBerry® MDS Connection Service is designed to provide extensive support for pushing content or data to BlackBerry devices. To push content to the BlackBerry device, you can develop server-side applications that make HTTP POST requests to the BlackBerry MDS Connection Service. Requests include a list of the destination BlackBerry devices that are targeted to receive the pushed content.
The BlackBerry MDS Connection Service sends the content to the appropriate BlackBerry devices using the users' email addresses. The BlackBerry MDS Connection Service manages the connection to the wireless network and verifies that content is delivered as soon as a user is in a wireless coverage area.
On the BlackBerry device, a separate browser listener thread listens on port 7874 for incoming messages and processes incoming messages.
The BlackBerry MDS Connection Service supports the following content push protocols:
Content push protocol Description
RIM Push The RIM Push protocol sends the content as a byte stream to the destination
BlackBerry device to the port that is specified in the URL of the pushed message. Pushed data can be stored in RAM on the BlackBerry MDS Connection Service server or in the BlackBerry® Enterprise Server database.
WAP PAP Push The PAP protocol sends an HTTP POST request containing a PAP message. The
message is a MIME multipart message that includes the control entity and the pushed content. The control entity is an XML document that specifies information about the destination BlackBerry device address, message ID, delivery time stamps, and so on.
Supported push methods
Using the BlackBerry® MDS Connection Service, you can push content to the BlackBerry device using any of the following push methods:
32
Fundamentals Guide
Pushed content delivery
Pushing content to a browser channel: This method delivers content to the browser cache and adds an icon on the Home screen as entry point to the content. Clicking the icon opens the pushed content in the browser.
Pushing content to the message list: This method delivers content to the message list, where it appears as an item in the list. Clicking the item in the message list displays the pushed content in the browser.
Pushing content to the browser cache: This method delivers content to the cache, but provides no notification to the user. The next time the user accesses the content, the updated cached content is displayed.
The default amount of time that pushed content is stored in cache memory depends on the version of the BlackBerry® Device Software is running on the device. In BlackBerry Device Software version 3.8 or later, pushed content is cleared from the cache after 12 hours. On devices running an earlier version of the BlackBerry Device Software, pushed content expires and is cleared from the cache after 29 days.
To increase or decrease the time content is stored in cache memory, you can specify a date and time in the HTTP header of the push request with the Expires header. For example, the following header will store content in cache until December 31, 2018 at 12PM GMT.
Expires: Wed, 31 Dec 2018 24:00:00 GMT
Content might be cleared from the cache prior to the value specified in the Expires header. If the BlackBerry device runs low on flash memory, the browser cache might be cleared to free up space, or the user might choose to manually clear the pushed content cache.

Pushed content supported by the BlackBerry Internet Service Browsing network gateway

You can push content to BlackBerry® device users through the BlackBerry Internet Service Browsing network gateway by creating web signals. Web signals enable you to push content to the BlackBerry® Browser using the BlackBerry Internet Service Browsing as the network gateway. Users subscribe to the web signal(s) you offer and receive an icon on their Home screen. To the user, the web signal appears like any other application. When they click the web signal icon, the Internet Browser configuration opens and retrieves the content through the BlackBerry Internet Service Browsing.
To push content to users, you must first register one or more web signals with Research In Motion. Users can subscribe to receive your web signal(s) on their BlackBerry devices.
Creating content for a web signal can be simple or complex. At its simplest, a web signal requires a subscription web page, two icons used to identify the web signal on the BlackBerry device Home screen (the standard icon, displayed when no new content is available, and the other notification icon, displayed when new content is available), and a web page that contains the content that subscribed users can view.
When you want to alert web signal subscribers to new content, you can submit an HTTP POST request to the BlackBerry® Infrastructure. A parameter in the POST request lists the subscribed users to whom the URLs should be sent. The BlackBerry Infrastructure receives the request and queues it, then delivers the URLs of the icons and the content to the BlackBerry devices.
33
Fundamentals Guide
Pushed content delivery
The BlackBerry Browser retrieves the icons without user intervention, and replaces the standard icon with the notification icon on the Home screen. When the user clicks the notification icon, the BlackBerry Browser opens and retrieves the content from the URL specified in the push request. After the user clicks the notification icon, the BlackBerry Browser replaces the notification icon with the standard icon on the Home screen.

Pushed content supported by WAP network gateways

To push content through a WAP gateway, a WAP Push service record must be provisioned on the BlackBerry® device. WAP Push service records are typically sent during registration. On the BlackBerry device, the WAP Push service record specifies how the BlackBerry device receives WAP pushes, on which ports the WAP Push Processor listens for incoming WAP Push messages, and how the BlackBerrydevice manages the incoming messages.
Server applications can push content to the BlackBerry device using one of the following methods:
Existing WAP connections: This method is available only when a WAP connection is open between the BlackBerry device and the WAP gateway.
SMS messages: If an existing WAP connection is not available, the service record provisioned for the GPRS and CDMA networks typically uses SMS.
Wireless service providers can restrict incoming SMS messages to specific source addresses. The source address restrictions are specified as parameters in the WAP Push service record.
UDP messages: If an existing WAP connection is not available, the service record provisioned for the iDEN® network typically uses UDP.
Push message types Description
service indicator These messages are self-contained with some text to inform the user about an event
or notification. The entire text of the message is included in the service indicator that is pushed to the BlackBerry device.
service loading These messages include a URL at which the new content is located. The service
loading message is pushed to the BlackBerry device first, and then the browser automatically downloads content from the URL location.
When a pushed message is successfully or unsuccessfully processed by the BlackBerry® Browser, a push completion notification is sent to the push initiator.
By default, the browser handles service indicator and service loading messages automatically. Users can change how incoming pushed messages are handled, or turn off WAP Push support in the browser configuration properties.
34
Fundamentals Guide

Glossary

Glossary
AJAX
Asynchronous JavaScript® and XML
DES
Data Encryption Standard
DOM
Document Object Model
HTML
Hypertext Markup Language
HTTP
Hypertext Transfer Protocol
HTTPS
Hypertext Transfer Protocol over Secure Sockets Layer
IP
Internet Protocol
IPPP
Internet Protocol Proxy Protocol
5
JSON
JavaScript® Object Notation
LAN
local area network
MIME
Multipurpose Internet Mail Extensions
MPEG
Moving Picture Experts Group
NTLM
NT LAN Manager
PAP
Push Access Protocol
35
Fundamentals Guide
SSL
Secure Sockets Layer
Triple DES
Triple Data Encryption Standard
TCP
Transmission Control Protocol
TLS
Transport Layer Security
URI
Uniform Resource Identifier
WAP
Wireless Application Protocol
WLAN
wireless local area network
WML
Wireless Markup Language
Glossary
WTLS
Wireless Transport Layer Security
WTP
WAP Transaction Protocol
XML
Extensible Markup Language
36
Fundamentals Guide

Provide feedback

To provide feedback on this deliverable, visit www.blackberry.com/docsfeedback.
Provide feedback
37
Fundamentals Guide

Legal notice

Legal notice
©2008 Research In Motion Limited. All rights reserved. BlackBerry®, RIM®, Research In Motion®, SureType®, SurePress™ and related trademarks, names, and logos are the property of Research In Motion Limited and are registered and/or used in the U.S. and countries around the world.
ECMAScript is a trademark of Ecma International. Atom is a trademark of IETF Trust. iDEN is a trademark of Motorola, Inc. Kerberos is a trademark of the Massachusetts Institute of Technology. Netscape is a trademark of Netscape Communication Corporation. Java and JavaScript are trademarks of Sun Microsystems, Inc. Wi-Fi is a trademark of the Wi-Fi Alliance.
The BlackBerry smartphone and other devices and/or associated software are protected by copyright, international treaties, and various patents, including one or more of the following U.S. patents: 6,278,442; 6,271,605; 6,219,694; 6,075,470; 6,073,318; D445,428; D433,460; D416,256. Other patents are registered or pending in the U.S. and in various countries around the world. Visit www.rim.com/patents for a list of RIM (as hereinafter defined) patents.
This documentation including all documentation incorporated by reference herein such as documentation provided or made available at www.blackberry.com/go/docs is provided or made accessible "AS IS" and "AS AVAILABLE" and without condition, endorsement, guarantee, representation, or warranty of any kind by Research In Motion Limited and its affiliated companies ("RIM") and RIM assumes no responsibility for any typographical, technical, or other inaccuracies, errors, or omissions in this documentation. In order to protect RIM proprietary and confidential information and/or trade secrets, this documentation may describe some aspects of RIM technology in generalized terms. RIM reserves the right to periodically change information that is contained in this documentation; however, RIM makes no commitment to provide any such changes, updates, enhancements, or other additions to this documentation to you in a timely manner or at all.
This documentation might contain references to third-party sources of information, hardware or software, products or services including components and content such as content protected by copyright and/or third-party web sites (collectively the "Third Party Products and Services"). RIM does not control, and is not responsible for, any Third Party Products and Services including, without limitation the content, accuracy, copyright compliance, compatibility, performance, trustworthiness, legality, decency, links, or any other aspect of Third Party Products and Services. The inclusion of a reference to Third Party Products and Services in this documentation does not imply endorsement by RIM of the Third Party Products and Services or the third party in any way.
EXCEPT TO THE EXTENT SPECIFICALLY PROHIBITED BY APPLICABLE LAW IN YOUR JURISDICTION, ALL CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS, OR WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS OR WARRANTIES OF DURABILITY, FITNESS FOR A PARTICULAR PURPOSE OR USE, MERCHANTABILITY, MERCHANTABLE QUALITY, NON­INFRINGEMENT, SATISFACTORY QUALITY, OR TITLE, OR ARISING FROM A STATUTE OR CUSTOM OR A COURSE OF DEALING OR USAGE OF TRADE, OR RELATED TO THE DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON-PERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCED HEREIN, ARE HEREBY EXCLUDED. YOU MAY ALSO HAVE OTHER RIGHTS THAT VARY BY STATE OR PROVINCE. SOME JURISDICTIONS MAY NOT ALLOW THE EXCLUSION OR LIMITATION OF IMPLIED WARRANTIES AND CONDITIONS. TO THE EXTENT PERMITTED BY LAW, ANY IMPLIED WARRANTIES OR CONDITIONS RELATING TO THE DOCUMENTATION TO THE EXTENT THEY CANNOT BE EXCLUDED AS SET OUT ABOVE, BUT CAN BE LIMITED, ARE HEREBY LIMITED TO NINETY (90) DAYS FROM THE DATE YOU FIRST ACQUIRED THE DOCUMENTATION OR THE ITEM THAT IS THE SUBJECT OF THE CLAIM.
6
38
Fundamentals Guide
Legal notice
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, IN NO EVENT SHALL RIM BE LIABLE FOR ANY TYPE OF DAMAGES RELATED TO THIS DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON­PERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCED HEREIN INCLUDING WITHOUT LIMITATION ANY OF THE FOLLOWING DAMAGES: DIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, SPECIAL, PUNITIVE, OR AGGRAVATED DAMAGES, DAMAGES FOR LOSS OF PROFITS OR REVENUES, FAILURE TO REALIZE ANY EXPECTED SAVINGS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, LOSS OF BUSINESS OPPORTUNITY, OR CORRUPTION OR LOSS OF DATA, FAILURES TO TRANSMIT OR RECEIVE ANY DATA, PROBLEMS ASSOCIATED WITH ANY APPLICATIONS USED IN CONJUNCTION WITH RIM PRODUCTS OR SERVICES, DOWNTIME COSTS, LOSS OF THE USE OF RIM PRODUCTS OR SERVICES OR ANY PORTION THEREOF OR OF ANY AIRTIME SERVICES, COST OF SUBSTITUTE GOODS, COSTS OF COVER, FACILITIES OR SERVICES, COST OF CAPITAL, OR OTHER SIMILAR PECUNIARY LOSSES, WHETHER OR NOT SUCH DAMAGES WERE FORESEEN OR UNFORESEEN, AND EVEN IF RIM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, RIM SHALL HAVE NO OTHER OBLIGATION, DUTY, OR LIABILITY WHATSOEVER IN CONTRACT, TORT, OR OTHERWISE TO YOU INCLUDING ANY LIABILITY FOR NEGLIGENCE OR STRICT LIABILITY.
THE LIMITATIONS, EXCLUSIONS, AND DISCLAIMERS HEREIN SHALL APPLY: (A) IRRESPECTIVE OF THE NATURE OF THE CAUSE OF ACTION, DEMAND, OR ACTION BY YOU INCLUDING BUT NOT LIMITED TO BREACH OF CONTRACT, NEGLIGENCE, TORT, STRICT LIABILITY OR ANY OTHER LEGAL THEORY AND SHALL SURVIVE A FUNDAMENTAL BREACH OR BREACHES OR THE FAILURE OF THE ESSENTIAL PURPOSE OF THIS AGREEMENT OR OF ANY REMEDY CONTAINED HEREIN; AND (B) TO RIM AND ITS AFFILIATED COMPANIES, THEIR SUCCESSORS, ASSIGNS, AGENTS, SUPPLIERS (INCLUDING AIRTIME SERVICE PROVIDERS), AUTHORIZED RIM DISTRIBUTORS (ALSO INCLUDING AIRTIME SERVICE PROVIDERS) AND THEIR RESPECTIVE DIRECTORS, EMPLOYEES, AND INDEPENDENT CONTRACTORS.
IN ADDITION TO THE LIMITATIONS AND EXCLUSIONS SET OUT ABOVE, IN NO EVENT SHALL ANY DIRECTOR, EMPLOYEE, AGENT, DISTRIBUTOR, SUPPLIER, INDEPENDENT CONTRACTOR OF RIM OR ANY AFFILIATES OF RIM HAVE ANY LIABILITY ARISING FROM OR RELATED TO THE DOCUMENTATION.
Prior to subscribing for, installing, or using any Third Party Products and Services, it is your responsibility to ensure that your airtime service provider has agreed to support all of their features. Some airtime service providers might not offer Internet browsing functionality with a subscription to the BlackBerry® Internet Service. Check with your service provider for availability, roaming arrangements, service plans and features. Installation or use of Third Party Products and Services with RIM's products and services may require one or more patent, trademark, copyright, or other licenses in order to avoid infringement or violation of third party rights. You are solely responsible for determining whether to use Third Party Products and Services and if any third party licenses are required to do so. If required you are responsible for acquiring them. You should not install or use Third Party Products and Services until all necessary licenses have been acquired. Any Third Party Products and Services that are provided with RIM's products and services are provided as a convenience to you and are provided "AS IS" with no express or implied conditions, endorsements, guarantees, representations, or warranties of any kind by RIM and RIM assumes no liability whatsoever, in relation thereto. Your use of Third Party Products and Services shall be governed by and subject to you agreeing to the terms of separate licenses and other agreements applicable thereto with third parties, except to the extent expressly covered by a license or other agreement with RIM.
Certain features outlined in this documentation require a minimum version of BlackBerry® Enterprise Server, BlackBerry® Desktop Software, and/or BlackBerry® Device Software.
39
Fundamentals Guide
Legal notice
The terms of use of any RIM product or service are set out in a separate license or other agreement with RIM applicable thereto. NOTHING IN THIS DOCUMENTATION IS INTENDED TO SUPERSEDE ANY EXPRESS WRITTEN AGREEMENTS OR WARRANTIES PROVIDED BY RIM FOR PORTIONS OF ANY RIM PRODUCT OR SERVICE OTHER THAN THIS DOCUMENTATION.
Research In Motion Limited 295 Phillip Street Waterloo, ON N2L 3W8 Canada
Research In Motion UK Limited Centrum House 36 Station Road Egham, Surrey TW20 9LF United Kingdom
Published in Canada
40
Loading...