Compatibility/UADetectionLibraries
Jump to navigation
Jump to search
User Agent Detection Libraries
This is a list of User Agent detection libraries to be tested for compatibility with Firefox OS and Firefox for Android. This may also include general purpose JS libraries that include UA detection.
The end goal is to contact these sites or (even better, in the case of open source libraries) provide patches so our mobile browsers are correctly identified.
UA strings to test with:
Firefox Mobile for Android:
Mozilla/5.0 (Android; Mobile; rv:23.0) Gecko/23.0 Firefox/23.0
Firefox OS:
Mozilla/50. (Mobile; rv:18.0) Gecko/18.0 Firefox/18.0
Libraries to be tested
Java
- UADetector https://github.com/before/uadetector
- User Agent Utils https://github.com/HaraldWalker/user-agent-utils
JavaScript
- UA.js https://github.com/g13n/ua.js
- UAParser.js https://github.com/faisalman/ua-parser-js
- Node User Agent Parse https://github.com/jujhars13/node-user-agent-parse
- Mobile Agent https://github.com/fabdrol/mobileagent
- useragent https://github.com/3rd-Eden/useragent
- isMobile https://github.com/kaimallea/isMobile
- platform.js https://github.com/bestiejs/platform.js
- Express Device https://npmjs.org/package/express-device
- is-mobile https://npmjs.org/package/is-mobile (not widely used, but first result in NPM for "mobile")
- Dojo Toolkit https://github.com/dojo/ (see http://dojotoolkit.org/reference-guide/1.7/quickstart/browser-sniffing.html)
- Do we need to recommend a ffos or fxos token be added to the module? https://github.com/dojo/dojo/blob/master/sniff.js
- jQuery Mobile http://jquerymobile.com (FF for Android listed as A-grade support, FFOS not mentioned).
- Mootools (https://github.com/mootools/mootools-core/blob/master/Source/Browser/Browser.js)
PHP
- WPTouch (WordPress) Bug 909420 http://wordpress.org/plugins/wptouch/
- Detector (Drupal) https://drupal.org/project/detector
- Mobile-Detect https://github.com/serbanghita/Mobile-Detect / http://mobiledetect.net/
- PHP Mobile Detect http://code.google.com/p/php-mobile-detect/
- PHP User Agent https://github.com/ornicar/php-user-agent
- PHP User Agent Parser https://github.com/donatj/PhpUserAgent
- PHP User Agent Parser https://bitbucket.org/hkgoldenmra/php-user-agent-parser
- Mobile Detect Bundle https://github.com/suncat2000/MobileDetectBundle
- WordPress Mobile Detect http://wordpress.org/plugins/wp-mobile-detect/
- Categorizr https://github.com/bjankord/Categorizr
Ruby
note: TJ's lib is unmaintained but there appears to be a number of active forks.
- agent_orange https://github.com/kevinelliott/agent_orange
- browser https://github.com/fnando/browser
- Mobvious https://github.com/jistr/mobvious
- UserAgent https://github.com/josh/useragent
Go
- UserAgent https://github.com/mssola/user_agent
Python
- Python User Agents https://github.com/selwin/python-user-agents
- Django Mobile https://github.com/gregmuellegger/django-mobile
- minidetector https://github.com/saschwarz/minidetector/network
- GoMobile (Plone) https://pypi.python.org/pypi/gomobile.mobile
Perl
- HTTP::BrowserDetect https://github.com/oalders/http-browserdetect
Multiple Languages
- Woothee https://github.com/tagomoris/woothee
- UA Parser https://github.com/tobie/ua-parser
- http://detectmobilebrowsers.com/
Server Modules
- Apache Mobile Filter http://www.apachemobilefilter.org/
- (NGINX has a DeviceAtlas module)
- Detect Right http://detectright.com/
- NetBiscuits http://www.netbiscuits.com/