Roadmap for ASP.NET Mobile Development
This document provides a roadmap for mobile web development technologies in ASP.NET
from ASP.NET 1.1 to beyond the release of ASP.NET 2.0.
Roadmap Summary
The following outlines the evolution of ASP.NET’s mobile web development technology.
ASP.NET 1.x
- The ASP.NET 1.x mobile controls were introduced
- A Device Profiling service (http://www.asp.net/mobile/profile/default.aspx), which
allows developers to profile any device in order to build a custom support for that
device, was introduced.
- Four device updates that provided lists of additional supported devices were released.
- Microsoft's approach to providing ongoing support for devices transitioned from
supporting specific devices via regular device updates, to supporting markup languages.
This means that there will be no further Device Updates unless there is a major
change such as a new markup language (see the 'Support for individual devices' section
below).
- In May 2005, Microsoft will release source code to the ASP.NET 1.x adapters (which
includes the Device Update 2 XHTML adapter source) and the Device Profiling tool.
This source code will serve as a sample for customers who are building their own
custom adapters.
ASP.NET 2.0
- ASP.NET will introduce a new control adapter architecture which allows any ASP.NET
2.0 server control to create alternate behaviors for other browsers (including mobile
devices).
- ASP.NET 2.0 will include new features requested by mobile web developers such as
auto-detection of cookieless browsers, an improved format for storing browser profiles,
membership, profiles, and personalization.
- ASP.NET 2.0 will still include the ASP.NET 1.x mobile controls, as well as the adapters
and devices up to Device Update 4. Microsoft recommends that customers continue
to use the ASP.NET 1.x mobile controls to develop mobile web applications on ASP.NET
2.0 (see below for details).
After the Release of ASP.NET 2.0
- 0-3 months after ASP.NET 2.0 launch: the Device Profiling tool will be updated to
produce browser capabilities files (.browser).
Roadmap Details
Mobile Web development with ASP.NET 1.x
Today, developers use the ASP.NET 1.x mobile controls (formerly known as the Microsoft
Mobile Internet Toolkit) to built applications which target a broad range of devices.
These controls dynamically render different markup languages (including HTML, cHTML,
WML, and XHTML) depending on what the device supports.
Mobile Web development with ASP.NET 2.0
ASP.NET 2.0 will introduce a new control adapter architecture that allows any
ASP.NET 2.0 server control to create alternate behaviors for other browsers, including mobile
devices (this adapter architecture is similar to the technology used in the
ASP.NET 1.x mobile controls). By default the ASP.NET 2.0 controls render XHTML.
The ASP.NET 2.0 release will also include the ASP.NET 1.1 mobile controls, as well
as all of the ASP.NET 1.1 adapters up until the last device update (DU4). Microsoft
recommends that developers use the ASP.NET 1.1 mobile controls to build applications
designed to target a broad range of mobile devices on ASP.NET 2.0
ASP.NET 2.0 runtime will introduce new features requested by developers who build
mobile web applications:
- Simplified device filtering: Adding device filtering can now be achieved declaratively
using simple markup.
- Cookieless per device: this is a new ASP.NET 2.0 feature that allows a per-device
or request handling of the cookieless requirement. In ASP.NET 1.x this was a blanket
setting for the application regardless of the device capability.
- Simplified browser capabilities file: The format of the browser capabilities file
has been simplified to make it more manageable. Browser capabilities were already
abstracted into more manageable files in ASP.NET 1.1 and the concept is improved
further in ASP.NET 2.0. Developers now can manage updates and changes to individual
browser files, rather than machine.config, web.config and config files for device
updates.
- New ASP.NET 2.0 features such as membership, profile, pluggable session state and
more.
Support for Devices from ASP.NET 1.x Onwards
The original plan for the ASP.NET 1.x mobile controls involved releasing periodic
'Device Updates' to add support for specific devices as they came to market. Based
on the evolution of the mobile device market, Microsoft has decided to change our
device support plan to focus on delivering support for broad categories of devices
and markup languages, and to deliver a set of tools to enable customers to develop
custom support for the specific devices which they wish to target.
In ASP.NET 1.x and in future releases, this change means that Microsoft will not
specifically certify individual new devices for use with ASP.NET controls (through
either product releases or device updates). Instead, Microsoft has provided adapters
for the ASP.NET 1.x mobile controls that render markup compliant with common markup
languages (HTML, cHTML, XHTML Mobile Profile, and CHTML) and work on standard browsers.
These adapters will continue to function on the ASP.NET 2.0 runtime.
For many applications, these adapters will work out of the box for a variety of
devices. If desired, developers can fine-tune their application for an individual
device by creating a new device profile (a profile is a suite of capabilities) and
writing new adapters as necessary. The source code for these adapters will be provided
as a reference for developing new adapters. Microsoft has also provided a profiling
service to help developers customize their applications
(http://www.asp.net/mobile/profile/default.aspx).
Since ASP.NET 2.0 includes a new control adapter architecture similar to that in
ASP.NET 1.x, developers can write control adapters to customize server controls
for individual browsers or device classes. For example, a developer can write a
control adapter to generate a different rendering for the Calendar control on
Internet Explorer versus an iMode browser.
Frequently Asked Questions
Q1: Which technology should customers use to build mobile web applications?
With ASP.NET 1.1 customers should use the ASP.NET 1.1 mobile controls to build mobile
web applications. With the release of ASP.NET 2.0, Microsoft recommends that customers
continue using the ASP.NET 1.1 mobile controls on the 2.0 framework.
ASP.NET 1.1 applications will run on ASP.NET 2.0 with no modifications. Applications
using the ASP.NET 1.1 mobile controls on the ASP.NET 2.0 will be able to take advantage
of all ASP.NET 2.0 features except for master pages, web parts, and themes.
Important Note: As new devices come out, developers may need to develop device adapters/textwriters
as well as browsercaps files to support these devices. Microsoft will ship markup
specific adapters which will cover general classes of devices, but will no longer
ship device updates which target specific devices. If customers would like assistance
with building device specific support, Microsoft can put them in touch with 3rd
party companies who specialize in mobile development with ASP.NET, or with Microsoft
PSS.
Q2: Will the ASP.NET 1.x mobile controls support all of the ASP.NET 2.0 features
(like membership and profile etc.)
A: Profile and membership are supported, but the ASP.NET 1.x mobile controls will
not support master pages, web parts, and themes.
Q3: We would like support for modern phone features like colors, flash, tickers
and tables. How can we achieve this support using the while still serving down-level
phones?
A: Depending on the specific scenario it may be possible to support for these features
via custom controls or pages or adapters. Both the ASP.NET 1.x mobile controls and
ASP.NET 2.0 runtime support adaptive rendering for custom controls. By developing
device adapters for feature rich devices, developers can tell ASP.NET to render
enhanced functionality for devices that support it, while still delivering basic
support for downlevel devices.
Q4: What will happen when a new device comes to market with a different screen
size and a new markup language version?
Microsoft provides the tools necessary for developers to build support for the specific
devices that they need to target, even if these new devices have different screen
sizes. In cases where there is a major change (such as a new markup language), Microsoft
will decide whether or not to publish new device adapters on a case by case basis.
Q5: Why will Microsoft not provide device specific updates?
Our original plan was to provide regular updates, however, based on the evolution
of the market we needed to change our approach in order to better address the rapid
proliferation of different kinds of devices around the world. In speaking with customers,
we've found that most developers are interested in targeting a specific set of devices
(often these devices are those supported by a given corporate IT department or mobile
phone company), rather than all devices from around the world. For those customers
who want to target specific devices we will provide a set of tools to help them
build support for those devices immediately, rather than having to wait for Microsoft
to provide an update. If customers would like assistance with building support we
can put them in touch with 3rd party companies who specialize in mobile development
with ASP.NET, or with Microsoft PSS.
Q6: Are there solution providers or systems integrators who can assist me with
mobile development on ASP.NET (including device adapter development)?
Yes. Here are a few companies provide custom development services for mobile applications
on ASP.NET:
- Content Master:
- Immedient:
- PSGI: