BlackBerry Browser - 4.7.0

BlackBerry Browser
Version: 4.7.0
Fundamentals Guide
SWDT432285-432285-1205031032-001
Contents
1
Understanding the BlackBerry device browsing environment.............................................................................................
Characteristics of BlackBerry devices...........................................................................................................................................
BlackBerry Device Software version considerations..........................................................................................................
Trackball..................................................................................................................................................................................
Trackwheel..............................................................................................................................................................................
Touch screen...........................................................................................................................................................................
Keyboard..................................................................................................................................................................................
Network gateways and BlackBerry Browser configurations......................................................................................................
The BlackBerry MDS Connection Service network gateway.............................................................................................
The BlackBerry Internet Service Browsing network gateway............................................................................................
WAP network gateways.........................................................................................................................................................
3
3
4
4
5
5
6
8
9
10
11
2 BlackBerry Browser content support and features.................................................................................................................
BlackBerry Browser content support............................................................................................................................................
BlackBerry Browser features..........................................................................................................................................................
Network gateway features.............................................................................................................................................................
13
13
14
15
3 Content and network management in the BlackBerry Browser...........................................................................................
Content rendering...........................................................................................................................................................................
Browser content views...........................................................................................................................................................
Style sheets and CSS support...............................................................................................................................................
Form support...........................................................................................................................................................................
Table support..........................................................................................................................................................................
Images.....................................................................................................................................................................................
Support for media streaming................................................................................................................................................
Support for web feeds............................................................................................................................................................
Script processing.............................................................................................................................................................................
JavaScript support and DOM access...................................................................................................................................
Support for AJAX and the XMLHttpRequest object...........................................................................................................
Content navigation.........................................................................................................................................................................
Page navigation......................................................................................................................................................................
Link behavior...........................................................................................................................................................................
Navigation history in the BlackBerry Browser....................................................................................................................
Bookmarks in the BlackBerry Browser.................................................................................................................................
16
16
16
17
18
19
20
21
21
22
23
24
24
24
25
26
27
Content storage..............................................................................................................................................................................
Content caches.......................................................................................................................................................................
Cookie storage........................................................................................................................................................................
27
27
28
4 Content optimization and delivery...........................................................................................................................................
Content optimization by the network gateway...........................................................................................................................
Content transcoding..............................................................................................................................................................
Content preprocessing and filtering....................................................................................................................................
Image optimization................................................................................................................................................................
Progressive downloading of images.....................................................................................................................................
Pushed content delivery.................................................................................................................................................................
Pushed content supported by the BlackBerry MDS Connection Service........................................................................
Pushed content supported by the BlackBerry Internet Service Browsing network gateway........................................
Pushed content supported by WAP network gateways.....................................................................................................
29
29
29
30
30
31
31
32
33
34
5 Glossary.........................................................................................................................................................................................
35
6 Legal notice..................................................................................................................................................................................
38
Fundamentals Guide
Understanding the BlackBerry device browsing environment
Understanding the BlackBerry device browsing
environment
1
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
Characteristics of BlackBerry devices
Fundamentals Guide
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.
touch the screen twice quickly
click (press) the screen
On the shortcut bar, this action displays a tooltip that describes the action that the
icon represents.
On a web page, map, picture, or presentation attachment, this action zooms in to
the web page, map, picture, or presentation attachment.
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
Characteristics of BlackBerry devices
Fundamentals Guide
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.
slide a finger to the left or right quickly
on the screen
hold a finger on an item
touch and drag an item on the screen
When the keyboard appears, sliding a finger down quickly hides the keyboard and
displays the shortcut bar.
This action displays the next or previous picture or message, or the next or previous
day, week, or month in a calendar.
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.
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 This action highlights the text between the two locations or the list of items, such
same time
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
Network gateways and BlackBerry Browser configurations
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.
•
•
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.
8
Network gateway
Accessed by
Protocol
BlackBerry MDS Connection Service
BlackBerry Internet Service Browsing
BlackBerry Browser configuration
Internet Browser configuration
HTTP/IPPP
HTTP/IPPP
Network gateways and BlackBerry Browser configurations
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.
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
Network gateways and BlackBerry Browser configurations
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.
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
Network gateways and BlackBerry Browser configurations
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.
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.
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.
WAP 2.0
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 168bit). 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
Network gateways and BlackBerry Browser configurations
Fundamentals Guide
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.
WAP 2.0
The WAP Browser configuration does not support the WMLScriptCrypto library.
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
BlackBerry Browser content support and features
Fundamentals Guide
BlackBerry Browser content support and features
2
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
markup
HTML 4.01
Component
tables
image maps
frames
scripting
CSS 2.1
SVG
XHTML-MP
WML
DOM L2
core
HTML
style
events
media
AJAX
JavaScript® 1.5
ECMAScript™ 262 3rd Edition
WMLScript
video
WMV
h.263
audio
MP3
MP4
Partial support in
BlackBerry Device
Software version
Full support in
BlackBerry Device
Software version
3.2.1
3.8
3.8
4.2
3.8
3.7
—
—
4.6
—
—
—
—
—
3.8
—
3.2.1
4.6
4.6
4.6
4.6
4.6
—
3.6
3.2
—
4.6
4.6
4.6
4.6
4.6
4.6
3.8
—
—
—
4.3
4.6
—
—
4.2
4.2
13
BlackBerry Browser features
Fundamentals Guide
Format type
Content type
Component
Partial support in
BlackBerry Device
Software version
Full support in
BlackBerry Device
Software version
WAV
MIDI
—
—
4.2
3.7
animated GIF
TIFF
BMP
JPEG
PNG
GIF
—
—
—
—
—
—
4.2
—
4.2
3.8
3.7
3.7
3.7
3.2.1
3.2.1
—
4.3
—
images
web feeds
RSS 0.9, 1.0, 2.0
RSS enclosures
Atom™
BlackBerry Browser features
Category
Feature
Included in BlackBerry Device
Software version
navigation
wireless service provider customizable bookmarks
one-click link navigation
bookmarks
navigation history list
cookie cache
pushed content cache
media streaming
progressive image rendering
page view
column view
offline form submission
background downloading
3.8
3.7
3.2
3.2
3.2
3.6
4.3
4.2.2
4.2.1
3.2
3.8
3.2
content storage
content rendering
wireless-friendly browsing
14
Network gateway features
Fundamentals Guide
Category
Feature
Included in BlackBerry Device
Software version
usability
single browser Home screen icon
bookmarks associated with browser configurations
4.2
4.2
Network gateway features
Category
Feature
content delivery
progressive delivery
browser session management
PAP push applications
RIM push applications
web signal push applications
WAP push applications
image optimization
enhanced image optimization
content filtering
content preprocessing
SSL/TLS encryption
WTLS encryption
Triple DES encryption
Kerberos™ authentication
NTLM authentication
Password authentication
protocol
RADIUS for PDP
web access restriction
content optimization
security
BlackBerry MDS
Connection Service
BlackBerry
Internet Service
Browsing
WAP
supported (4.2.2 or later)
supported (4.1 or later)
supported
supported (3.6 or later)
—
—
supported (3.6 or later)
supported (4.1.5 or later)
supported (3.7 or later)
supported (3.7 or later)
supported (3.6 or later)
—
supported (3.2 or later)
supported (3.2 or later)
supported (3.2 or later)
—
supported
supported
—
—
supported
—
supported
supported
supported
supported
supported
—
—
—
—
—
—
—
—
—
—
supported
—
—
—
—
—
supported
—
—
—
supported
—
supported (3.2 or later)
—
—
supported
—
15
Content and network management in the BlackBerry Browser
Fundamentals Guide
Content and network management in the BlackBerry
Browser
3
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.
Page View
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 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
Content rendering
Fundamentals Guide
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
3.8 to 4.5
Description
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:
4.6 or later
•
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.
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
Content rendering
Fundamentals Guide
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
Content rendering
Fundamentals Guide
BlackBerry Device
Software version
3.7 to 4.5
Description
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.
4.6 or later
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.
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
Description
version
3.7 or earlier
3.8 to 4.5
Tables are not supported in the BlackBerry Browser in BlackBerry Device Software version 3.7
or earlier.
In BlackBerry Device Software versions 3.8 to 4.5, the BlackBerry Browser provides basic
support for tables, including support for the <table>, <tr>, <td>, and <th> elements.
19
Content rendering
Fundamentals Guide
BlackBerry Device Software
Description
version
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.
4.6 or later
In BlackBerry Device Software version 4.5 or earlier, users can turn off support for tables in the
BlackBerry Browser options.
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
Content rendering
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.
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
•
•
Script processing
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
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.
•
•
22
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.
Script processing
Fundamentals Guide
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
3.8 to 4.5
Description
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:
•
•
•
•
•
•
•
•
4.6 or later
Blackberry
BlackberryLocation (introduced in BlackBerry Device Software version 4.1)
Document
Form
History
Navigator
Screen
Window
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
Content navigation
Fundamentals Guide
BlackBerry Device
Software version
Description
•
DOM Level 2 Events
The BlackBerry Browser also provides partial support for DOM Level 3 Events, including the
KeyboardEvent and TypeEvent objects.
For more information about the BlackBerry Browser's JavaScript implementation, see the BlackBerry Browser JavaScript
Reference.
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
Content navigation
Fundamentals Guide
Input method
Description
When the user rolls the trackwheel, the focus on the page moves from link to link.
trackball
To follow a link, the user clicks the trackwheel.
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
image maps
On a web page, users scroll to links by rolling the trackball or trackwheel.
In the BlackBerry Browser, hotspot regions within the image are denoted with a dotted line.
•
•
phone links
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.
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
Content navigation
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>
email links
When users click a phone link, the phone application opens and users are prompted to
confirm whether or not to proceed with the call.
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>
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
•
Content storage
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.
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
Content storage
Fundamentals Guide
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.
This cache stores content that is pushed to the BlackBerrydevice.
This cache stores cookies that are assigned to the BlackBerry Browser by web pages
that the user visits.
pushed content cache
cookie cache
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
Content optimization and delivery
Fundamentals Guide
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
Content optimization by the network gateway
Fundamentals Guide
Data type
Description
scripts
JavaScript® (internal or external) is transcoded into JavaScript bytecode.
images
WMLScript is transcoded into compiled WMLScript.
All .gif files are transcoded into .png file format.
Java® applications
If the BlackBerry device does not support native .jpg files, .jpg files are converted
to .png file format.
JAR files are converted into .cod file format.
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
Pushed content delivery
Fundamentals Guide
Property
Description
The network gateway maintains the aspect ratio when it scales images.
image color depth
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.
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.
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
Pushed content delivery
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 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.
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.
WAP PAP Push
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
Pushed content delivery
Fundamentals Guide
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.
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.
service loading
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
5
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
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
WTLS
Wireless Transport Layer Security
WTP
WAP Transaction Protocol
XML
Extensible Markup Language
36
Glossary
Fundamentals Guide
Provide feedback
Provide feedback
To provide feedback on this deliverable, visit www.blackberry.com/docsfeedback.
37
Fundamentals Guide
Legal notice
Legal notice
6
©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, NONINFRINGEMENT, 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.
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 NONPERFORMANCE 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