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.