Compatibility/UADetectionLibraries: Difference between revisions
Line 38: | Line 38: | ||
== Tested, issues reported in Bugzilla == | == Tested, issues reported in Bugzilla == | ||
'''Meta Bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=915706 915706]''' | '''Meta Bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=915706 915706]''' | ||
*fixed | |||
server frameworks | |||
* Apache Mobile Filter [https://bugzilla.mozilla.org/show_bug.cgi?id=916250 916250] | * Apache Mobile Filter [https://bugzilla.mozilla.org/show_bug.cgi?id=916250 916250] | ||
* http://handsetdetection.com [https://bugzilla.mozilla.org/show_bug.cgi?id=957205 Bug 957205] | |||
java | |||
* User Agent Utils [https://bugzilla.mozilla.org/show_bug.cgi?id=915727 915727] * | |||
php | |||
* WPTouch (WordPress) [https://bugzilla.mozilla.org/show_bug.cgi?id=909420 Bug 909420] | |||
js | |||
* Device.js [https://bugzilla.mozilla.org/show_bug.cgi?id=915853 915853] * | * Device.js [https://bugzilla.mozilla.org/show_bug.cgi?id=915853 915853] * | ||
* | * Woothee [https://bugzilla.mozilla.org/show_bug.cgi?id=914313 Bug 914313] * | ||
* Detectizr [https://bugzilla.mozilla.org/show_bug.cgi?id=956998 Bug 956998] * | * Detectizr [https://bugzilla.mozilla.org/show_bug.cgi?id=956998 Bug 956998] * | ||
* is-mobile [https://bugzilla.mozilla.org/show_bug.cgi?id=914231 Bug 914231] * | * is-mobile [https://bugzilla.mozilla.org/show_bug.cgi?id=914231 Bug 914231] * | ||
* UA.js [https://bugzilla.mozilla.org/show_bug.cgi?id=913189 Bug 913189] * | |||
* Platform.js [https://bugzilla.mozilla.org/show_bug.cgi?id=913633 Bug 913633] | * Platform.js [https://bugzilla.mozilla.org/show_bug.cgi?id=913633 Bug 913633] | ||
* JS Redirection Mobile [https://bugzilla.mozilla.org/show_bug.cgi?id=932458 Bug 932458]* | * JS Redirection Mobile [https://bugzilla.mozilla.org/show_bug.cgi?id=932458 Bug 932458]* | ||
* http://detectmobilebrowsers.com/ [https://bugzilla.mozilla.org/show_bug.cgi?id=914241 Bug 914241*] | |||
== Libraries known to be compatibile == | == Libraries known to be compatibile == |
Revision as of 04:05, 11 January 2014
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 some kind of 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 as mobile (and not served desktop content or blocked outright).
UA strings to test with:
Firefox Mobile for Android:
Mozilla/5.0 (Android; Mobile; rv:24.0) Gecko/24.0 Firefox/24.0
Firefox OS phones:
Mozilla/5.0 (Mobile; rv:18.0) Gecko/18.0 Firefox/18.0
Firefox OS tablets:
Mozilla/5.0 (Tablet; rv:26.0) Gecko/18.0 Firefox/26.0
Some known Firefox OS UA strings with device ids (found in bugzil.la/873385):
Mozilla/5.0 (Mobile; ZTEOPEN; rv:18.1) Gecko/18.1 Firefox/18.1
Mozilla/5.0 (Mobile; HUAWEIY300-F1; rv:18.1) Gecko/18.1 Firefox/18.1
Mozilla/5.0 (Mobile; LG-D300; rv:18.1) Gecko/18.1 Firefox/18.1
Mozilla/5.0 (Mobile; ALCATELOneTouch4012X; rv:18.1) Gecko/18.1 Firefox/18.1
See also https://developer.mozilla.org/en-US/docs/Gecko_user_agent_string_reference#Firefox_OS_version_number.
Libraries to be tested
JavaScript
- 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
Server Modules
- NetBiscuits http://www.netbiscuits.com/ (have reached out, unsure how to test right now.)
Tested, issues reported in Bugzilla
Meta Bug: 915706
*fixed
server frameworks
- Apache Mobile Filter 916250
- http://handsetdetection.com Bug 957205
java
- User Agent Utils 915727 *
php
- WPTouch (WordPress) Bug 909420
js
- Device.js 915853 *
- Woothee Bug 914313 *
- Detectizr Bug 956998 *
- is-mobile Bug 914231 *
- UA.js Bug 913189 *
- Platform.js Bug 913633
- JS Redirection Mobile Bug 932458*
- http://detectmobilebrowsers.com/ Bug 914241*
Libraries known to be compatibile
Go
- UserAgent https://github.com/mssola/user_agent
Java
- UADetector https://github.com/before/uadetector
JavaScript
- Detect.js https://github.com/darcyclarke/Detect.js
- Express Device https://npmjs.org/package/express-device
- isMobile https://github.com/kaimallea/isMobile
- jQuery Mobile
- Mobile Agent https://github.com/fabdrol/mobileagent
- Mootools (https://github.com/mootools/mootools-core/blob/master/Source/Browser/Browser.js)
- Node User Agent Parse https://github.com/jujhars13/node-user-agent-parse
- ua-parser-js https://github.com/faisalman/ua-parser-js
- useragent https://github.com/3rd-Eden/useragent
- YUI - http://yuilibrary.com/yui/docs/yui/yui-ua.html
Multiple Languages
- ua-parser (multiple languages) https://github.com/tobie/ua-parser
- Mobile ESP http://blog.mobileesp.com/
- Some ports of this are compatible, in contact with maintainer via email.
Perl
- HTTP::BrowserDetect https://github.com/oalders/http-browserdetect
PHP
- Categorizr https://github.com/bjankord/Categorizr (Note: no longer maintained)
- Detector (Drupal) https://drupal.org/project/detector / http://detector.dmolsen.com/
- Mobile-Detect https://github.com/serbanghita/Mobile-Detect / http://mobiledetect.net/ / http://code.google.com/p/php-mobile-detect/
- Mobile Detect Bundle https://github.com/suncat2000/MobileDetectBundle
- PHP User Agent https://github.com/ornicar/php-user-agent
- PHP User Agent Parser https://github.com/donatj/PhpUserAgent
- WordPress Mobile Detect http://wordpress.org/plugins/wp-mobile-detect/
Python
- Django Mobile https://github.com/gregmuellegger/django-mobile
- GoMobile (Plone) https://pypi.python.org/pypi/gomobile.mobile
- minidetector https://github.com/saschwarz/minidetector/network
- Python User Agents https://github.com/selwin/python-user-agents
Ruby
- agent_orange https://github.com/kevinelliott/agent_orange
- browser https://github.com/fnando/browser
- Mobvious https://github.com/jistr/mobvious (uses MobileESP (ruby port is at least compatible)
- UserAgent https://github.com/josh/useragent (makes no mobile/non-mobile distinction)
- User Agent Parser https://github.com/toolmantim/user_agent_parser
Server Detection Frameworks
- 51 Degrees http://51degrees.mobi/Products/DeviceDetection.aspx
- Detect Right http://detectright.com/
- DeviceAtlas https://deviceatlas.com/device-data/user-agent-tester
- OpenDDR http://openddr.org/
- WURFL (1.4) http://tools.scientiamobile.com/?user-agent-string=Mozilla%2F5.0+%28Mobile%3B+rv%3A18.0%29+Gecko%2F18.0+Firefox%2F18.0