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 w
As Dino mentioned, the WURFL API is distributed under AGPL, but also available under commercial licensing terms (this is called dual licensing, or also offering a GPL exception in FSF's parlance).
The wurfl.xml file is not longer considered raw data, though. Because of the creative work of keeping the data organized and groups, ScientiaMobile claims the copyright on the wurfl.xml file starting with version 2.2 and distributes it under certain conditions (notably, that the wurfl.xml file can only be used in connection with one of the standard APIs):
http://wurfl.sourceforge.net/licence.php
Acquiring a commercial license also delivers certain extra rights on the wurfl.xml file itself.
I think WURFL has more capabilities and more active community, and it has more frecuently release than mdbf. But i have to say that microsoft is doing good work. You could look Marg.Wurfl, too.
And remember you can use GPL software in SaaS.
You can look Marg.Wurfl too,
The WURFL official .NET API has been released recently by ScientiaMobile--the WURFL people's newco. You can access it here: http://www.scientiamobile.com/site/page/view/downloads. However, it is subject to the AGPL license, which basically means you need to buy a commercial license to use the API in a commercial app, including a Web site. Raw data remains free.
A whitepaper showing how to integrate it with ASP.NET is: http://wurfl.sourceforge.net/dotNet.
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.
The MDBF was updated fairly recently. If what you need is basic information it's probably better as it integrates nicely with your .NET framework.
Marg.Wurfl is definitely a good choice and integrates with .NET framework as well.
Both have an approach that is good for the old .NET style, not the MVC. In MVC you will have to do your own legwork.
You might also want to consider DeviceAtlas that has an API for .NET and has very good performance in .NET.
Specifically to your questions, WURFL is updated almost once a month, while AFAIK there are no planned updates for MDBF, they will release an update if and when they feel like it (yes, not very exciting). You might use Javascript to detect features in modern browsers such as iPhone, Android and recent Nokias, but for all the rest, the User-Agent string is still the only real option, so I'd say it depends on your target market. You might want to create a super-simple version that works for all and an advanced version where you do feature detection. I don't like the idea of online services, if you plan to have a high volume site. Once-a-month updates are OK, with commercial products like DeviceAtlas or Mobile Phone Wizards you can get more frequent updates.
DISCLAIMER: I used to work for dotMobi that created DeviceAtlas