OpenwaveTM SDK 6.2.2 is a Windows-based application that you can use to test how your wireless applications work with Openwave Mobile Browser 6.2.2 and Openwave Mobile Messaging client. The SDK features a mobile phone simulator, which includes the same browser code as is embedded in real mobile phones. It also includes sample code and a generic phone configuration file, or "skin," that represents an idealized mobile phone.
Openwave SDK 6.2.2 is distributed as a set of packages, available from the Openwave Developer Program Web site:
Openwave Mobile Browser 6.2.2 can display content delivered in XHTML Mobile Profile 1.0 (XHTML-MP) with Cascading Style Sheets (CSS), the Wireless Markup Language (WML), MMS-SMIL, and a number of other formats.
The Openwave SDK 6.2.2 includes sample code for XHTML-MP and CSS and sample messages in variety of MMS formats. For more information, choose Start > Programs > Openwave SDK 6.2.2 > Samples > Readme.
Important: There are practical limits to how perfectly a Windows-based application can simulate a real mobile phone. For example, the SDK's Windows-based simulator relies on Windows fonts and type-handling code, whereas real phones use their own fonts and code. The character fit of Windows fonts can be very close to a real phone's fonts, but it's rarely identical. In addition, the CSS properties that adjust the space between words and characters are not supported by Windows, so they are ignored by the simulator. You can specify any font, size, or style available in Windows and the simulator will display it, even though the real phone may support only a handful of font sizes and styles. It's a good idea to obtain details about the features of mobile phones before you design your applications. And it's essential that after you develop and test your wireless applications using a phone simulator, you then test your applications on the actual phones and networks where they will be deployed.
For more information about the Openwave Mobile Browser 6.2.2 and Mobile Messaging client, for documentation on XHTML-MP, CSS, WML, MMS, and for a broad range of other information about developing content for Openwave browsers and the messaging client, visit the Openwave Developer Program Web site. Please also visit this site for further information about this release of the Openwave SDK and to tell us what you think.
You can install Openwave SDK 6.2.2 on any computer running:
To install Openwave SDK 6.2.2, download its InstallShield package from the Openwave Developer Program Web site, start it, and follow its on-screen instructions.
Once you've installed the SDK, you can install additional components.
To install the Openwave SDK 6.2.2 WAP simulator plug-in, download its InstallShield package from the Openwave Developer Program Web site and install it in the same directory as you installed the Openwave SDK 6.2.2 package.
The first time you start the SDK after you install it, the SDK sends your IP address and SDK version to Openwave to register the successful installation.
The following features have been added to the SDK since release 6.2.
Openwave Mobile Messaging Client
The SDK phone simulator now includes the Openwave Mobile Messaging Client application, for composing and reading MMS messages. When you've provisioned the simulator with an MMS Message Center (MMSC), you can exchange MMS messages with yourself and others. The Openwave Developer Program hosts an MMSC, which you can use with the SDK to try out the messaging application; for more information, visit http://developer.openwave.com.
To compose a message, choose Options > Messaging Home. The messaging client offers an intuitive interface for creating and sending MMS messages, which can include one or more slides of text, images, and sounds. You can also use the client to save and open draft messages, and to read messages in your Inbox.
An alert appears when you receive a message. You can respond to the alert by choosing to stop what you're doing and read the message; otherwise, the message is discarded (messages are only saved in your Inbox if you read them when you receive them).
As in release 6.2, you can use the File > Open MMS command to open the sample MMS messages included with the SDK.
When composing or reading a message, the Home, Go bar, and other navigation tools are not functional. However, you can back out of the messaging application by pressing the Back key.
Graphical User Interface for Configuring the SDK
The SDK now includes a Tools > Options command, which you can use to set a variety of permanent SDK settings. This UI replaces many of the command-line options you used in earlier releases of the SDK.
The options UI for the HTTP phone simulator provides the same settings as the following command-line arguments: -shownetworkinfo, -showphoneinfo, -sethome, -direct, -g, -pg, -pgs, -pgt, -user, -pass, -charset, and -lang.
The options UI for the WAP phone simulator provides the same settings as the following command-line arguments: -showphoneinfo, -sethome, -g, -pg, -p, -anon, -secure, -nonsecure, -clientid, -charset, and -lang.
The -shownetworkinfo, -showphoneinfo, and -sethome arguments remain useful as run-time commands.
The HTTP phone simulator options UI also adds a new server setting, for the address of a Push Proxy Gateway.
All settings except the server profiles apply to both the HTTP and WAP versions of the phone simulator.
The startup command-line arguments remain supported in release 6.2.2, to maintain backward compatibility with batch files or other scripts you may have created to control the SDK. If you start the SDK with a batch file that includes arguments other than -pho, the SDK creates a Command Line Options server profile for server settings, and the Command Line Options profile becomes the active profile.
Settings are associated with the phone configuration file (or "skin") you're currently using. When you change a setting, that information is stored in an XML file, which is stored with and named after the configuration file. For example, the configuration file for the generic 6.2 phone that comes with the SDK is named OPWV-SDK-62_config.xml and is stored in the devices folder with the OPWV-SDK-62.pho file.
While you may find it interesting to view this file in a text editor, it's not prudent to try to edit it. If for some reason your config.xml file becomes irretrievably corrupted, you can obtain a new one from the Openwave Developer web site.
User Agent String
You can edit the User Agent string to alter the HTTP User-Agent request header. This header is sent with the other HTTP request headers when the browser connects to a web server. The default User-Agent header is:
User-Agent: OPWV-SDK/62 UP.Browser/6.2.2.1.208 (GUI) MMP/2.0
You can design your web-based applications to recognize User-Agent headers and provide content that is tailored to the capabilities of different kinds of phones. To change this header, choose Tools > Options and click the Device tab to open the window where you can edit the User Agent string. (You can not edit this header for the WAP phone simulator.)
User Agent Profile (UAProf) URL
You can edit the UAProf URL to alter the HTTP x-wap-profile request header, which is sent with the other HTTP request headers when the browser connects to a web server. The default is:
x-wap-profile:"http://developer.openwave.com/uaprof/OPWVSDK62.xml"
Web-based applications can use this header to customize the content they deliver to the browser, based on the detailed information about the capabilities of the phone included in the UAProf XML document. For more information about the UAProf standard for describing the characteristics of a phone, visit the Open Mobile Alliance (OMA) web site, http://www.openmobilealliance.org.
HTTP Accept Headers
When the browser connects to a web server, it includes a string of MIME types in its HTTP Accept header that advertises the media and other file types the browser can work with. Web servers can use this information to customize the content they offer to a phone.
You can view the current Accept header list in the SDK Network Info window (the Network Info window isn't available for the WAP plug-in).
Choose Tools > Options, click the Device tab, and click the Accept Headers button to open a window where you can add MIME types to the Accept headers the browser sends to web browsers, or to remove them (in the case of a conflict, removing wins).
When you click Add or Remove, another window opens with a scrolling list of common MIME types you can select. You can also enter MIME types directly in the User Defined field.
Language, Character Set, and Fonts
When the browser connects to a web server, it includes two HTTP request headers that advertised the natural (human) language and character-encoding scheme it prefers for content. By default, the headers are for English and the Western character set:
Accept-Language:en
Accept-Charset:iso-8859-1
You can change the language and character set the browser includes in its HTTP request headers to any of a number of recommended combinations, or you can override the recommendations to advertise any language-country code you want in combination with one of the over 30 supported character sets.
Choose Tools > Options, click the Device tab, and click Language to open a window where you can choose a language and a recommended character set (or check Override Suggestions to pick any character set). You can also enter text directly in the Language field, to set the Accept-Language value.
You can also use the controls in this window to set the default face and size of font for normal and monospaced text used in by the simulator. The list of fonts includes those recommended for the current language; check the Override Suggestions box to pick from all available fonts.
Press the Reset Language and Script Settings button to restore the defaults.
Server Settings
You can configure and save the settings for how the browser and messaging client simulator connect to the Internet: directly, via a one or more proxies or gateways, an MMSC, or other servers. These settings are called server profiles.
Configuring how you connect to the Internet is commonly called "provisioning" and has two components: Configuring the server or servers to recognize and support the simulator, and configuring the simulator to find and correctly identify itself to the server.
When you first install it, the HTTP simulator is configured to connect directly to the Internet (HTTP Direct), without using a proxy or other gateway. The WAP plug-in is configured to connect via devgate2.openwave.com, the Openwave WAP gateway operated by Openwave Developer Support. The SDK is not configured to connect to a MMSC by default, but Openwave Developer Support does maintain one you can use. Visit the Openwave Developer Support web site for more information about public gateways you can use with the Openwave SDK, and for details about configuring the SDK to connect to them.
Choose Tools > Options and click the Server tab to view the list of saved server profiles. The active profile is identified by a red checkmark. Select a profile name and click Settings to view details of how the profile is configured, or to change it. Click Add to open a wizard that will guide you through the steps to configure and name a new profile -- you will need to obtain the configuration details from the administrator of the server you want to connect to. If you have more than one profile, you can select its name in the list and click Activate to make it the current profile. You can restore the default profiles and delete any you've created by clicking Reset Profiles.
Network Info and Phone Info Window
You can set how many lines of information you want these windows to store and whether they are open when you start the SDK. Choose Tools > Options, and click on the General tab to control these settings.
Homepage and Other Browser Settings
You can set the homepage that opens when you first start the SDK and when you click the phone's home button or choose Tools > Go Home. You can also open the browser's own menu to set a number of its internal options, and open a page that tells about the browser.
Choose Tools > Options and click the Browser tab. In the browser options window, you can enter a home page in place of the default, click Modify Browser Settings to switch to the simulator and work with the browser menu for setting browser internal options. Click About the Browser for details about the browser included in the simulator.
The browser's internal settings are not saved after you exit or restart the SDK; use the SDK's user interface to make persistent configurations.
Revised Edition of the XHTML-MP and CSS Reference
This book has been completely rewritten for Openwave Mobile Browser versions 6.1 and 6.2. You can obtain a copy of this book in PDF and HTML formats from the Openwave Developer Support web site.
Openwave SDK 6.2 introduces a number of new features since SDK 6.1:
-lang command-line argument and the simulator's Tools > Language menu.
-charset utf-8 command-line argument to set the character set you want the simulator to include in its accept headers to UTF8, without altering the other language and font settings you established with the -lang argument (or, in release 6.2.2, in the Language options window). UTF8 is the popular UNICODE character encoding scheme.
When you install the SDK with the default installation options, the installer creates an Openwave SDK 6.2.2 HTTP menu item in the Start > Programs > Openwave SDK 6.2.2 menu. You can choose this menu item to start the SDK in its default configuration.
This menu item is in fact a link to a batch file:
C:\Program Files\Openwave\SDK 6.2.2\program\OSDK62http.bat
In release 6.1 and 6.2 of the SDK, you edited this batch file (or created another script) to configure the SDK. In 6.2.2, you configure the SDK with the graphical user interface available when you choose the SDK's Tools > Options command (the command-line options for configuring the SDK remain supported, for compatibility with any existing batch files or scripts you've created).
You can also control the SDK from another application, such as a third-party integrated development environment (IDE), using the Windows Command Processor. The commands and their arguments you use are described in the following sections of these release notes. Information on integrating the Openwave SDK with popular IDEs is available from the Openwave Developer Support web site.
When you install the SDK with the default installation options, the HTTP version of the Openwave Mobile Browser 6.2.2 simulator is installed in:
C:\Program Files\Openwave\SDK 6.2.2\program\http\OSDK62http.exe
When you start the SDK, the Openwave SDK 6.2.2 window opens, with a simulation of a mobile phone featuring keys you can click and a display for content, useful menu commands, and so on.
The simulator's View menu includes commands that open windows with additional information: The Phone Information window and the Network Information window. You can use the General tab of the window that opens when you choose the SDK's Tools > Options command to set whether these windows open when you start the SDK.
The Phone Information window displays a wide variety of information about the commands you execute and their results, including debugging information. The information displayed in the Phone Info window is also written to a log file, named sim.log, which is stored in the same directory as the SDK application file. Each time you start the SDK, a new sim.log file is created, and the log file from the last session is renamed sim.bck.
The Network Information window is a new feature in Openwave SDK 6.2.2. This window displays information about each HTTP protocol transaction between the simulator and a web server.
You open the Network Information window by choosing the simulator’s View > Network Info command.
The Network Info window has two sections: An upper section that lists summary information about each HTTP transaction, and a lower section that displays details about the transaction selected in the summary list.
The transaction details are displayed in three sections:
0, indicating that there are no more chunks in the response.
The information displayed in the Network Info window is also written to a log file, named network.log, which is stored in the same directory as the SDK application file. Each time you start the SDK, it creates a new network.log file, and renames the log file from the last session Network.bck.
To control memory use, the SDK only displays the 200 most recent HTTP transactions in the Network Information window. However, all transactions are retained in the log file (until the log file is replaced when you restart the SDK). You can use the General options window to change the number of lines the SDK displays.
Keep the following in mind as you use the command-line tools to control the SDK.
OSDK62http.exe file (C:\Program Files\Openwave\SDK 6.2.2\program\http\ by default) or include its absolute path name.
OSDK62http.exe, the argument is ignored and an error message appears in the Phone Info window.
/ ) in URLs or arguments for Web sites and local files. The SDK does not support Windows-style slashes ( \ ).
file:// in the SDK's Go field, or with such arguments as -reload and -go. However, you should not rely on this method to test your wireless applications, for a number of reasons, most notably:
file://
-g argument and loads files directly from your file system -- without any of the modifications that typical gateways make
http:// prefix instead.
-go or another command-line argument to open a URL that includes the & character, you need to enclose the URL in quotation marks.
When using the command-line arguments to start the SDK:
start command when starting the SDK: Otherwise your batch file or script will be blocked until you exit the SDK.
osdk62http.exe -direct -clearcache -pho OPWV-SDK-62.pho -sethome http://developer.openwave.com/dhome5.cgi
The following run-time arguments to OSDK62http.exe are supported by the SDK.
| Argument | -help |
| Description | Displays a summary of SDK command-line arguments in the SDK's Phone Information window. |
| Example | OSDK62http.exe -help |
| Argument | -exit |
| Description | Causes the SDK to exit. |
| Example | OSDK62http.exe -exit |
| Notes | Equivalent to choosing the SDK's File > Exit command. |
| Argument | -shownetworkinfo |
| Description | Opens the Network Information window. |
| Example | OSDK62http.exe -shownetworkinfo |
| Argument | -showphoneinfo |
| Description | Opens the Phone Information window. |
| Example | OSDK62http.exe -showphoneinfo |
| Notes | This argument replaces the -noconsole argument from previous SDKs. |
| Argument | <URL> |
| Description | If the first string after the SDK executable does not start with a dash ( - ), the SDK tries to load that string as a URL, as if it were parameter of the -reload argument. |
| Example | OSDK62http.exe file://c:/mydecks/index.html
OSDK62http.exe http://developer.openwave.com/dhome5.cgi |
| Argument | -reload [<URL>] |
| Description | When used without the optional URL, reloads the current URL in the SDK's simulator window.
When used with a URL, marks that URL as invalid in the SDK's cache and then opens the specified URL. |
| Example | OSDK62http.exe -reload
OSDK62http.exe -reload file://c:/mydecks/index.html |
| Notes | When used without a URL, equivalent to the SDK's Edit > Reload menu command (F9). |
| Argument | -go <URL> |
| Description | Opens the URL in the SDK's simulator window. |
| Example |
OSDK62http.exe -go http://developer.openwave.com/dhome5.cgi
|
| Notes | Equivalent to entering a URL or path in the SDK's Go field.
For URLs, you can omit http://.
For files, you must include file://. You can enter an absolute path name or a path name relative to the location of OSDK62http.exe.
|
| Argument | -gohome |
| Description | Opens the current home deck in the SDK's simulator window. |
| Example | OSDK62http.exe -gohome |
| Notes | Equivalent to choosing the SDK simulator's Tools > Go Home command. |
| Argument | -sethome <URL> |
| Description | Sets the SDK's home deck when connecting with the -direct argument. |
| Example |
OSDK62http.exe -sethome http://developer.openwave.com/dhome5.cgi
|
| Notes | For URLs, you can omit http://.
For files, you must include file://. You can enter an absolute path name or a path name relative to the location of OSDK62http.exe.
This argument only sets the home deck, it does not instruct the SDK to open it as well. You can also use the SDK simulator's Tools > Set as Home command to set the page currently displayed in the browser as it's home, and enter a homepage URL directly in the Browser tab of the window that opens when you choose Tools > Options. |
| Argument | -pho <.pho file> |
| Description | Changes the phone configuration file used by the SDK's simulator. |
| Example |
OSDK62http.exe -pho OPWV-SDK-62.pho
|
| Notes | Equivalent to using the SDK's File > Change Device command to choose a phone configuration file.
You can enter an absolute path for the phone configuration file. Or if the .pho file is in the C:\Program Files\Openwave\SDK 6.2.2\program\devices directory, you can just enter its file name.
|
| Argument | -clearcache |
| Description | Clears the SDK's cache and then opens the home deck. |
| Example | OSDK62http.exe -clearcache |
| Notes | Equivalent to using the SDK's Edit > Clear Cache command (F12). |
The following command-line arguments for configuring the SDK have been replaced with the graphical user interface available when you choose the SDK's Tools > Options command, as described in the "What's New" section of these release notes. These commands remain supported by the SDK to maintain compatibility with any existing scripts or batch files you created for earlier releases of the SDK.
| Argument | -direct |
| Description | Configures the SDK to connect directly to wireless content on a Web server or in your file system, rather than through a gateway or other proxy. |
| Example |
OSDK62http.exe -direct
|
| Notes | This argument is ignored if the SDK is already running. |
| Argument | -g <gateway> |
| Description | Specifies the gateway or other proxy the SDK uses to connect to Web servers hosting wireless applications. |
| Example |
OSDK62http.exe -g proxy.mydomain.com -clearcache
|
| Notes | You can only specify a gateway or other proxy (such as the Openwave ESF) that can accept an HTTP connection.
This argument is ignored if the SDK is already running. You can specify a host name or IP address, but in either case it must be for a host that your computer's DNS server can resolve. Important: When changing gateways with the -g argument, always use the -clearcache argument at the same time.
|
| Argument | -pg <port> |
| Description | Specifies the nonsecure (HTTP) port on the gateway or other proxy the SDK uses to connect to Web servers hosting wireless applications. |
| Example |
OSDK62http.exe -g proxy.mydomain.com -pg 80 -clearcache
|
| Notes | This argument is ignored if the SDK is already running. |
| Argument | -pgs <port> |
| Description | Specifies the secure port on the gateway or other proxy the SDK uses to connect to Web servers hosting wireless applications, with link-by-link security. |
| Example |
OSDK62http.exe -g proxy.mydomain.com -pgs 443 -clearcache
|
| Notes | You specify this port if the proxy supports link-by-link security, that is, the browser establishes a secure connection with the proxy and then when the browser requests a URL from the proxy, the proxy establishes a separate secure connection with the Web site hosting the URL.
This argument is ignored if the SDK is already running. |
| Argument | -pgt <port> |
| Description | Specifies the port on the gateway or other proxy the SDK uses to tunnel through to connect to Web servers hosting wireless applications, using end-to-end security. |
| Example |
OSDK62http.exe -g proxy.mydomain.com -pgt 8080 -clearcache
|
| Notes | You specify this port if the proxy supports link-by-link security, that is, when the browser requests a URL from the proxy, the browser establishes a secure connection directly with the web server that hosts the URL, using the proxy port as a tunnel.
This argument is ignored if the SDK is already running. |
| Argument | -user <username> |
| Description | Specifies the user name the browser uses when establishing a connection with a gateway or other proxy that requires authorization, such as the Openwave ESF. |
| Example |
OSDK62http.exe -user myname -pass password
|
| Notes | You can use backslash-escaped characters in the user name and you can surround it with double quotes.
Ignored if the SDK is already running. |
| Argument | -pass <password> |
| Description | Specifies the password for the user name the browser uses when establishing a connection with a gateway or other proxy that requires authorization. |
| Example |
OSDK62http.exe -user myname -pass password
|
| Notes | You can use backslash-escaped characters in the password and you can surround it with double quotes.
Ignored if the SDK is already running. |
| Argument | -charset <charsetcode> |
| Description | Overrides the character set portion of the language settings you establish with the -lang argument or the graphical UI, setting the character set advertised in the simulator. The character set code can be any of those listed in the Character Set pop-up menu in the window that opens when you choose the SDK's Tools > Options command, click the Device tab, and press the Language button. |
| Example |
OSDK62http.exe -charset utf-8
|
| Notes | Unlike previous versions of the SDK, this argument does not need to follow a correct use of the -lang argument and can be used when the SDK is already running.
|
| Argument | -lang <language code> |
| Description | Specifies the language and character set ("Script") that the SDK tells content servers it prefers to receive, for servers that can deliver content in more than one language or character set. The SDK's browser declares these preferences in HTTP accept headers, which it sends to content servers when it connects to them. |
| Example |
OSDK62http.exe -lang zh-hk
|
| Notes | The SDK only accepts the -lang argument parameters from the following table.
Unlike previous versions of the SDK, the -lang argument does not set the font used to display content in the simulator.
The text in the SDK simulator's UI (softkeys, menus, the status bar, error messages, and so on) are presented in English, regardless of the language you specify. Only zh-cn and zh-hk add the country portion of the code to the HTTP header.
|
-langparameter |
Language | Charset | Script |
ar-sa |
Arabic | iso-8859-6 | Arabic |
zh-cn |
Chinese (Simplified) |
gb-2312 | Chinese_GB2312 |
zh-hk |
Chinese (Traditional) |
big5 | Chinese_BIG5 |
cs-cz |
Czech | iso-8859-2 | Latin2 |
da-dk |
Danish | iso-8859-1 | Western |
nl-nl |
Dutch | iso-8859-1 | Western |
en |
English | iso-8859-1 | Western |
fi-fi |
Finnish | iso-8859-1 | Western |
fr-fr |
French | iso-8859-1 | Western |
de-de |
German | iso-8859-1 | Western |
el-gr |
Greek | iso-8859-7 | Greek |
iw-il |
Hebrew | iso-8859-8 | Hebrew |
hu-hu |
Hungarian | iso-8859-2 | Latin2 |
it-it |
Italian | iso-8859-1 | Western |
ja-jp |
Japanese | Shift-JIS | Japanese |
ko-kr |
Korean | ks_c_5601 | Hangul |
no-no |
Norwegian | iso-8859-1 | Western |
pl-pl |
Polish | iso-8859-2 | Latin2 |
pt-pt |
Portuguese | iso-8859-1 | Western |
ru-ru |
Russian | windows-1251 | Cyrillic |
es-sp |
Spanish | iso-8859-1 | Western |
sv-se |
Swedish | iso-8859-1 | Western |
tr-tr |
Turkish | iso-8859-9 | Latin5 |
The following problems have not been fixed in this release of the Openwave SDK.
Request status: 200, regardless of the nature of the error.
localhost) are not reported when you choose the SDK's View > Cookies command.
Copyright (c) 1999-2003 Openwave Systems Inc. All rights reserved.
Openwave, the Openwave logo, and Services OS are registered trademarks and/or trademarks of Openwave Systems Inc. in various jurisdictions. All other trademarks are the property of their respective owners.
This Software shall not be shipped, transferred, exported or re-exported into any country or used in any manner prohibited by the United States Export Administration Act or any other export laws, restrictions or regulations (collectively the "Export Laws"). In addition, if this Software is identified as an export controlled item under the Export Laws, you represent and warrant that you are not located within an embargoed nation (including without limitation Cuba, Iran, Iraq, Libya, North Korea, Sudan and Syria) and that you are not otherwise prohibited under the Export Laws from receiving the Software. All rights to use the Software are granted on condition that such rights are forfeited if you fail to comply with the terms of this Agreement. Export or re-export of this software to the embargoed countries, and any other countries that the Bureau of Export Administration may subsequently add to the list of embargoed countries, is forbidden. In addition, this Software may not be sold as part of any product developed for or used exclusively by government agencies.
SDRN-622-007
June 2003