Mobile ASP.NET Emulators

When developing Mobile ASP.NET apps, it is useful to test the application across a variety of devices if the site is going to be posted to the internet.  ASP.NET Mobile controls rely on adapters to handle rendering on the different devices.  In order to hit the different adapters to ensure your page will work across the devices, you can use emulators.  While troubleshooting mobile issues, I typically use the following emulators:

  • HTML3.2 - I use Internet Explorer or one of the Pocket PC/Smartphone emulators that ship with Visual Studio.  The default rendering for these devices is HTML 3.2 and as a result, the mobile controls will use the HTML32 adapters to render.
  •  WML - I use the OpenWave 7 emulator that comes as part of the OpenWave 7 SDK.  ASP.NET picks up this device with a default rendering of WML allowing the mobile controls to use the WML adapters for rendering.
  • XHTML - I use the OpenWave 6.2.2 emulator.  The default rendering for this device is XHTML.

You can also use the <browserCaps> section in machine.config (1.x Framework) or .browser files (2.x Framework) to force the preferredRenderingType property of a device, however, I have found that using the emulators is quicker for testing against.

OpenWave emulators can be found here: https://developer.openwave.com/dvl/tools_and_sdk/phone_simulator/

The Pocket PC/Smartphone emulators are available on the Tools menu, under the Connect to Device option.

If you have a specific device and ASP.NET is not rendering the right content; i.e. your device supports JavaScript, but you're not getting JavaScript; you can use the Device Profiling Tool to generate a profile of the device and generate a <browserCaps> section (1.x) or a .browser file(2.0). 

 If you need to build a section for <browserCaps>, you can do this online here: 
https://www.asp.net/mobile/profile/default.aspx

If you need to generate a .browser file you can download the device profiler and run it locally:
https://www.asp.net/sandbox/app_devprof.aspx?tabid=62

You can find links to training and mobile ASP.NET development here:  https://www.asp.net/default.aspx?tabIndex=6&tabId=44