UADetector is a library to identify over 190 different desktop and mobile browsers and 130 other User-Agents like feed readers, email clients and multimedia players. In addition, even more than 400 robots like BingBot, Googlebot or Yahoo Bot can be identified.
This library is a free, portable Java library to analyze User-Agent strings. The goal of this library is to detect the type and the associated operating system of a client like Mobile Firefox 9.0 on Android or Mobile Safari 5.1 on iOS .
UADetector is divided into two modules. The Core module includes the API and implementation to read detection information and functions to identify User-Agents. The Resources module contains the database with all necessary identification informations and a service factory class to get simply preconfigured UserAgentStringParser singletons. The Resources library is published monthly and is integration-tested against a specific Core module. Therefore we can guarantee that the parsing works like expected.
Since version 0.9.10 we support device categorization which means that for instance an iPhone or Nexus 4 will be classified as Smartphone and an iPad, Kindle or Surface RT as Tablet. Please take a look into our API documentation to get an idea what you can get when parsing an user agent string.
This library detects over 190 different desktop and mobile browsers and 130 other User-Agents like feed readers, multimedia players and email clients.
On the Internet many robots are on their way to examine sites. A large number of robots can be detected with this library.
Each month a new version of the resources module will be published so you can always detect the latest User-Agents.
All classes in this library have been especially tested. The unit tests have over 90% branch and line coverage. In addition, many integration tests performed regularly.
UADetector is an open source tool and welcomes contributions.
Your participation in this project is much appreciated!