Mobile Device Browser File vs. WURFL for ASP.NET

asp.netbrowser-detectionmobile-websitewurfl

I am working on a commercial web application that has a separate mobile browser version intended for the more capable devices (BlackBerry, iPhone, Android, etc). I don't want to do simple User Agent contains style logic and was looking at the various detection libraries. It seems like WURFL and Mobile Device Browser File are my best options.

The Mobile Device Browser File (MDBF) project at CodePlex exposes information through the Request.Browser property. Also, it has a Microsoft Public License (Ms-PL). Mobile Browser Detection in ASP.NET mentions "data for MDBF comes from WURFL" and Mix: Mobile Web Sites with ASP.NET MVC and the Mobile Browser Definition File confirms MBDF is "created from a database from many sources, including the popular WURFL mobile device capabilities database."

51degrees has a .NET Mobile API that uses the WURFL data files and also populates Request.Browser. It is licensed under the Mozilla Public License Version 1.1. and claims:

With the .NET Mobile API installed and
WURFL providing mobile device data,
these calls will return extremely
accurate data when compared to the
standard browser information provided
by Microsoft

Since the official WURLF .NET API is distributed with a GPL License, so it is a non-starter for my project.

WURFL ASP.NET Implementations compares ASP.NET implementations of WURFL, but this is over a year old (2009-01-16 – Article submitted) and doesn't mention the 51degrees API or MDBF.

Can I get any feedback on which library to use.

  • How often are these data files updated?
  • Is it better to use feature detection that user agent parsing?
  • Is an online service (e.g. Handset Detection) easier that update data files?
  • Any other useful input.

Best Answer

Regarding Mobile Device Browser File:

Quote: "Due to the organizational restructuring of the team that developed and supported the Mobile Device Browser file, we will no longer have the resources to support and update this CodePlex project. The team will be providing two more releases – one on the 27th July 2010 and the final release on the 24th August 2010."

So that I am not just the bearer of bad news...

We are planning on using:

by 51 Degrees

Which has a really good example of:

Hope this helps.