The Nokia Browser for Series 40 provides a proxy-assisted web browsing and web application execution and management solution for Nokia Series 40 devices.
Network traffic from the Nokia Browser for Series 40 client is routed by means of globally distributed user agents called Nokia Browser for Series 40 Proxy servers. A proxy server fetches the requested content, applies content adaptation and compression, and returns a formatted and compressed representation of the requested page to the browser client. This proxy architecture significantly speeds up the browser response time, reduces data traffic to the client device, and reduces processor and battery load compared to conventional web browsers.
From the developer's point of view, one notable difference of the Nokia Browser for Series 40 service compared to conventional browsers is that JavaScript and most CSS are executed on the proxy rather than the client. This is partly due to the distributed nature of the browser service, where the proxy does content adaptation, and partly due to the infeasibility of providing full client-side JavaScript support on the affordable Series 40 target devices.
For more information on the architecture of the Nokia Browser for Series 40, see the Nokia Browser for Series 40 topic on Nokia Developer.
During the first half of 2011, the Nokia Browser for Series 40 is pre-loaded into the firmware update or initial firmware version of several Series 40 devices.
Additionally, the browser can be installed on a wide range of in-market Series 40 devices by pointing the device's existing browser to http://browser.ovi.com.
For a list of devices that are compatible with the Nokia Browser for Series 40, see the Nokia Developer Device specifications portal.
Detecting Nokia Browser for Series 40
To detect a Nokia device, there are two server-side strategies, which are described in Server-side detection of Nokia devices.
Supported features and technologies
Gecko layout engine (in the proxy) for content layout and formatting
HTML 4.0
XHTML 1.1, XHTML Basic, XHTML Mobile Profile
CSS 2.1, CSS Mobile Profile
JavaScript 1.8 (executed in the proxy)
DOM Level 1 and 2
WAP 2.0
Secure transactions with SSL 3.0 and TLS 1.10/1.1
JPG, PNG, and GIF support, including animated GIF
Audio and video playback support through mobile device multimedia applications
For detailed lists of the features and technologies supported in a particular Nokia device, see Device specifications.
Best practices and unsupported properties
Because the proxy server compresses and adapts the content, you may see some variation in the intended appearance of your web content when it is displayed on the device. You should be sure to test your content on mobile devices running the Nokia Browser for Series 40.
Developers should keep in mind that JavaScript served to the Nokia Browser for Series 40 is executed on the proxy server. Therefore, web content development techniques that focus on client-side processing are not optimal for the Nokia Browser for Series 40.
When designing a mobile web page, the developer of a mobile site should consider the device display size.
For a desktop site, no special work is required to deliver the content to the user. The user can choose to view a desktop page with the column view turned on of off. If the column view is turned on, the page width is adapted to fit within the width of the display so that horizontal scrolling is not required. If the column view is turned off, the page displays “zoomed out” so that the user sees the entire page. To read or interact with the web page, the user taps the screen or clicks the mouse a single time.
Nokia Browser for Series 40 supports only devices with 240 x 320 display resolution (Mobile Phones Group 2) at this time. Support for devices with 128 x 160 display resolution (Mobile Phones Group 1) is planned for an upcoming release. For more information about screen resolutions in Nokia devices, see Screen resolutions input methods and connection speeds.
In order to ensure that a web page is detected as a mobile page, include one of the following Document Type Declaration (DTD) tags in the XHTML document::
<!DOCTYPE html PUBLIC “-//WAPFORUM//DTD XHTML Mobile 1.0//EN "http://www.wapforum.org/DTD/xhtml-mobile10.dtd”>
<!DOCTYPE html PUBLIC “-//WAPFORUM//DTD XHTML Mobile 1.1//EN "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile11.dtd”>
<!DOCTYPE html PUBLIC “-//WAPFORUM//DTD XHTML Mobile 1.2//EN "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd”>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML Basic 1.0//EN "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd”>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML Basic 1.1//EN "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd”>