ua-device-detector
Install
$ bower i ua-device-detector -S
Server-Side Usage
var uaDeviceDetector=;var deviceInfo=uaDeviceDetector;
Client-Side Usage
Add script load to HTML:
Then use in your javascript:
var deviceInfo = windowuaDeviceDetector;
To use from angular:
Don't - Instead use ng-device-detector :)
Usage with Webpack
:
An issue with webpack might cause an error like this:
- Critical dependency: require function is used in a way in which dependencies cannot be statically extracted
To solve add this to your webpack.config.js
:
moduleexports = module: unknownContextCritical: false ;
More details here
API
parseUserAgent options specification:
- userAgent: (string, required) user agent string to parse
- customDetectors: ([object], optional) array of custom detectors:
- name: (string, required) name of detector as it will appear in deviceInfo
- re: (string|regex|reTree expression, required) the expression to use for detecting
- platform: (string, optional) platform name as returned by
navigator.platform
- maxTouchPoints: (string, optional) maxTouchPoints as returned by
navigator.maxTouchPoints
parseUserAgent returns a deviceInfo object:
- raw
- userAgent (string) - raw user agent
- os (object) - true/false detections per os
- browser (object) - true/false detections per browser
- device (object) - true/false detections per device
- os (string) - detected os
- browser (string) - detected browser
- device (string) - detected device
- os_version (string) - detected os version
- browser_version (string) - detected browser version
- isMobile() - returns true if device is mobile. false otherwise
- isTablet() - returns true if device is tablet. false otherwise
- isDesktop() - returns true if device is desktop. false otherwise
- custom (object) - true/false result of detection per custom detector
Support
Pull-requests with new stuff will be highly appreciated :)
Please remember to add tests when making changes.