Bwirelezz mobile solutions

6.8 What's special about the Microsoft Mobile Explorer?

The Microsoft Mobile Explorer, or MME, is a sort of dual mode browser in that it accepts both HTML and WML code. This presents all sorts of interesting new problems such as when presenting the same content in either HTML or WML based on what browser is used, how do you choose between HTML and WML when this browser supports both. This is not new, as the Opera browser is primarily a HTML browser, but supports WML. The MME does however present the data types in the correct order, i.e. HTML before WML, so if your browser detection code is correct you should have no problems.

After testing the MME Emulator with a very long list of sites, I have however found that everyone is using bad browser detection code. Most seem to rely on the fact that the string "Mozilla" means that it's a HTML capable browser with all capabilities such as Netscape or Internet Explorer. Be warned! There are many HTML browsers out there that do not have the word "Mozilla" in their user agent string. Instead, ask what type of data the browser can accept. This is an example on how to do that.

Note that the MME Emulator does not accept textual WML code, only tokenized WML (aka WMLC) requiring (like all WAP devices) a gateway to do the conversion from WML to WMLC.

The MME also accepts images of the JPEG and GIF format as well as WBMPs. In addition, the MME sends out a HTTP header string called HTTP-DISPLAY-AREA which tells the content server (web server) what the display size is. Very useful. If it had only passed along other info as well, we could be jumping for joy :-)

The MME identifies itself via the User Agent string as a Mozilla/1.22 compatible device. The complete id string for the MME Emulator is Mozilla/1.22 (compatible;MMEF20;CellPhone). Again useful info.

When using the MME Emulator, remember that the device operates in two modes. In one mode the device will talk to the content server (web server) directly, and read HTML and/or tokenized WMLC. Accessing a resource that outputs textual WML in this mode will not work unless you tell the MME Emulator where to find a WAP gateway. In this mode, all WAP requests are handled by the WAP gateway, and the device now (with the help of the WAP gateway) accepts textual WML.

[ Main ]   [ 06 - WAP development specifics ]