1. User Agent Detection and Client Device Capabilities Detection

1.1. Introduction

The number of client devices supported by an application is a major factor that determines whether the application will be a success or failure. Building an application that supports lots of user agents is not so straightforward because:

  • There are many different types of wireless devices these days. For example, there are cell phones, PDAs (personal digital assistants), smart watches, etc. Each type of wireless device has very different features and capabilities.

  • Even for the same type of wireless device, there are many different models and they have very different features and capabilities. For example, some cell phone models have a large screen that supports a high resolution; some have a color screen; some support both XHTML MP and WML while some others only support WML; some support Java applications while some others do not.

  • If your application is required to work on both wireless devices and personal computers, then you have to further take personal computers into consideration. Computers and wireless devices have very different features and capabilities.

In this tutorial, we will describe two common ways for detecting user agent types and device capabilities. The first way is to use the information in some traditional HTTP headers such as Accept, User-Agent, Accept-Charset and Accept-Language. The second way is to use UAProf (User Agent Profile), the standard way defined by the Open Mobile Alliance (formerly the WAP Forum) for detecting user agent types and device capabilities.

The advantage of UAProf is that it provides more detail information about the user agent and the wireless device than traditional HTTP headers. The drawback of UAProf is that old wireless device models do not support it.

Page 1 of 10 Next Page

Contents at a Glance (Click Here for Full Table of Contents)
Print this Web Page | | Back to Top

Feedback Form (Expand)

What do you think about this web page?