Welcome to Developer's Home Thursday, May 23, 2013
Home - DevelopersHome.com
Home Preferences
Mobile Internet Browsing (WAP) WAP Server Setup Tutorial Quick Links: Introduction How to Publish WAP 1.x / WAP 2.0 Content WAP 1.x / WAP 2.0 MIME Types and File Extensions Setting up MIME Types on WAP Servers Setting MIME Types with a htaccess File Setting MIME Types with Server-side Technologies Setting up Default Documents
WML Tutorial Quick Links: WML Introduction WML Deck and Card Font Size and Style WML Images WML Tables WML Anchor Links Programming Softkeys of Mobile Phones WML Template and Menu WML Events WML Selection Lists WML Input Fields WML Variables Submit Form Data Clear Saved Forms
WMLScript Tutorial Quick Links: WMLScript Introduction Compiling WMLScript Code WMLScript Language Rules Defining Functions Calling Functions WMLScript Variables WMLScript Variables Vs WML Variables Passing Arguments By Value and By Reference WMLScript Operators WMLScript Conditional WMLScript Looping WMLScript Standard Libraries WMLScript Arrays Validate Form Data
WMLScript Standard Libraries Reference Quick Links: WMLBrowser Library Dialogs Library String Library Float Library Lang Library URL Library
XHTML MP Tutorial Quick Links: XHTML MP Introduction Development of Wireless Markup Languages Advantages of XHTML MP WML Features Lost in XHTML MP Syntax Rules of XHTML MP XHTML MP MIME Types and File Extension XHTML MP Document Structure XHTML MP Generic Metadata XHTML MP Images XHTML MP Anchor Links XHTML MP Selection Lists XHTML MP Input Elements Submit Form Data
WAP CSS / WCSS Tutorial Quick Links: WCSS Introduction Syntax Rules of WCSS How to Apply Cascading Style Sheets to Documents WCSS Selectors Div and Span Elements Cascading Rules WCSS Font/Text Properties WCSS List Properties WCSS Color Properties WCSS Border Properties WCSS Access Key Extension WCSS Input Extension WCSS Marquee Extension Matching Style Sheets to Different User Agents
Detect User Agent Types and Device Capabilities Quick Links: Introduction The Accept Header The User-Agent Header The Accept-Charset Header The Accept-Language Header The x-wap-profile and Profile Headers How to Read the Value of an HTTP Header How to Use UAProf (User Agent Profile)
UAProf / User Agent Profile Reference Quick Links: HardwarePlatform Component SoftwarePlatform Component NetworkCharacteristics Component BrowserUA Component WapCharacteristics Component PushCharacteristics Component MmsCharacteristics Component
Upload Files From WAP Cell Phones Quick Links: How to Upload Files from WAP Cell Phones XHTML MP Example Handling File Uploads with PHP Handling File Uploads with JSP / Java Servlet Security Considerations of File Upload
Sample Book Chapters Adapting to User Devices Quick Links: Introduction to Adaptation of Mobile Sites Using WALL in Mobile Sites Using WURFL for Detecting Devices and Capabilites Other Open Source Tools for Adaptation
Mobile Messaging SMS Tutorial Quick Links: Introduction to SMS What Makes SMS Messaging So Successful Example SMS Applications SMS Center / SMSC Basic Concepts of SMS Intra-operator SMS Inter-operator SMS International SMS SMS Gateway How to Send SMS Messages from Computers How to Receive SMS Messages with Computers Introduction to GSM / GPRS Wireless Modems How to Use HyperTerminal Introduction to AT Commands General Syntax of Extended AT Commands Result Codes of AT Commands AT Command Operations: Test, Set, Read, Execution Checking if the Use of AT Commands to Send, Receive and Read SMS Messages is Supported Operating Mode: SMS Text Mode and SMS PDU Mode Setting/Reading the SMSC Address (AT+CSCA) Preferred Message Storage (AT+CPMS) Writing SMS Messages to Message Storage (AT+CMGW) Deleting SMS Messages from Message Storage (AT+CMGD) Sending SMS Messages from a Computer / PC (AT+CMGS, AT+CMSS) Reading SMS Messages from Message Storage (AT+CMGR, AT+CMGL) How to Choose an SMS Gateway Provider Comparison Table of SMS Gateway Providers Free SMS Software/Tools and Libraries GSM 7-bit Default Alphabet Table (with ISO 8859-1) SMS on Windows PC (Non-Developers) SMS on Linux PC (Non-Developers)

Tutorial about Detecting User Agent Types and Client Device Capabilities



Preferences - Do not show ads

A major problem faced by mobile application developers is that wireless devices such as cell phones have very different capabilities. One feature that is supported on one cell phone model may not be available on another model.

There are a number of methods for detecting the features and capabilities of a user agent or wireless device. In this tutorial, we focus on two of them. The first method is to make use of HTTP headers such as Accept, User-Agent, Accept-Charset and Accept-Language. The other method is to retrieve information from a UAProf (User Agent Profile) document. UAProf was defined by the Open Mobile Alliance for user agent detection and client device capabilities detection.


Table of Contents

User Agent Detection and Client Device Capabilities Detection

Introduction

Headers in HTTP Requests

The Accept Header -- Find the MIME Media Types that will be Accepted by a User Agent

Common MIME Types List

The User-Agent Header -- Identify a User Agent and Client Device

To Identify a Specific Mobile Device Model with the User-Agent Header

To Differentiate Mobile Devices or User Agents Made by Different Companies with the User-Agent Header

To Determine Whether a User Agent is a Web Browser on a Personal Computer or a Microbrowser on a Mobile Device with the User-Agent Header

The Accept-Charset Header -- Find Character Sets that are Supported by a User Agent

The Accept-Language Header -- Find the Language Preference

The x-wap-profile Header and the Profile Header -- Find the UAProf Document of a Mobile Device

How to Read the Value of an HTTP Header

Retrieving HTTP Headers with ASP

Retrieving HTTP Headers with Java Servlet / JSP

Retrieving HTTP Headers with Perl

Retrieving HTTP Headers with PHP

Using UAProf (User Agent Profile) to Detect User Agent Types and Device Capabilities

Introduction

Where to Find the URL of the UAProf Document of a Mobile Device

UAProf Profile Resolution

Free Library / Tool for Retrieving UAProf Attribute Values

A Simple Way for Retrieving UAProf Attribute Values

UAProf Components and Attributes

Collection Types and Attribute Types in UAProf



Custom Search