AJAX Application Development in Windows Mobile 6.5
Windows Mobile 6.5 significantly improved web application
capabilities for mobile developers primarily through the introduction of
Internet Explorer Mobile 6. This article explores how the operating
system supported AJAX (Asynchronous JavaScript and XML) development,
focusing on its updated Trident rendering engine, native
XMLHttpRequest integration, improved script execution, and
support for installable web widgets.
The Internet Explorer Mobile 6 Engine
Prior to Windows Mobile 6.5, developing dynamic web applications for Windows Mobile was constrained by the outdated Pocket Internet Explorer engine. Windows Mobile 6.5 resolved many of these issues by shipping with Internet Explorer Mobile 6 (IE Mobile 6).
IE Mobile 6 was built on the desktop-grade Trident (MSHTML) layout engine, integrating core components from desktop Internet Explorer 6 alongside backported features from Internet Explorer 7 and 8. This upgrade provided modern web standards compliance, allowing developers to execute standard JavaScript routines, manipulate Document Object Model (DOM) elements dynamically, and utilize CSS for layout presentation without relying on heavy third-party runtimes.
Native XMLHttpRequest Implementation
The core foundation of AJAX—the XMLHttpRequest (XHR)
object—received full, standard support in IE Mobile 6. Developers could
initiate asynchronous HTTP requests to transfer data in XML, JSON, or
plain text formats in the background without requiring a full page
refresh.
Unlike earlier iterations that frequently required clunky ActiveX
workarounds (ActiveXObject("Microsoft.XMLHTTP")), Windows
Mobile 6.5 supported both standard JavaScript instantiations
(new XMLHttpRequest()) and legacy ActiveX constructs. This
compatibility enabled modern asynchronous programming patterns and
facilitated the porting of desktop web applications to mobile
devices.
Enhanced JavaScript and DOM Support
Windows Mobile 6.5 included an updated JScript engine (version 5.7/5.8 equivalents), which delivered faster script execution and improved memory management over Windows Mobile 6.1.
Key technical aspects included:
- DOM Level 2 Support: Developers could reliably traverse and modify HTML elements, attach event listeners, and update partial view states dynamically upon receiving AJAX responses.
- JSON Serialization: While native
JSON.parse()was limited depending on the patch level, the engine efficiently processed JSON strings via lightweight libraries without excessive memory consumption. - Third-Party Frameworks: The standard compliance allowed developers to run customized or early versions of popular AJAX and DOM libraries, such as tailored builds of jQuery, Prototype, and Sencha Touch.
Packaged Web Applications (Windows Mobile Widgets)
A major feature introduced in Windows Mobile 6.5 was native support for Windows Mobile Widgets based on the W3C Widget packaging specification.
Developers could build standalone, offline-capable applications using
standard AJAX architecture (HTML, CSS, and JavaScript) packaged inside a
.wgt (ZIP) archive. The operating system ran these widgets
inside a dedicated, chromeless IE Mobile 6 runtime instance, effectively
allowing AJAX-driven web code to behave like native applications
installed directly on the device.
Handling Hardware and Network Constraints
While Windows Mobile 6.5 brought modern AJAX to mobile devices, developers still had to account for contemporary mobile constraints. IE Mobile 6 lacked the fast JavaScript Just-In-Time (JIT) compilation present in modern browsers, meaning complex client-side data parsing could degrade performance. As a result, standard development practices for the platform favored lightweight JSON payloads over heavy XML structures and aggressive caching strategies to handle intermittent cellular connectivity.