React Native User Agent
Platforms Supported
Getting Started Guide
- Add @thang2162/react-native-user-agent to your dependencies
yarn add @thang2162/react-native-user-agent
or, for npm use
npm install @thang2162/react-native-user-agent --save
- Link native dependencies
2.1 react-native >= 0.60
Autolinking will take care of the link step, but for iOS, don't forget to run pod install
in ios/
folder
If you haven't set up cocoapods yet, please refer to that article
2.2 react-native < 0.60
You have to call link
command manually:
react-native link @thang2162/react-native-user-agent
For manual linking, please refer to:
Usage
import UserAgent from '@thang2162/react-native-user-agent';
UserAgent.getUserAgent();
UserAgent.getWebViewUserAgent()
.then(ua => {})
.catch(e => {})
Examples:
System | User-Agent | WebView User-Agent |
---|
iOS | application-name/1.6.4.176 CFNetwork/897.15 Darwin/17.5.0 (iPhone/6s iOS/11.3) | Mozilla/5.0 (iPhone; CPU iPhone OS 11_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E217 |
Android | application-name/1.6.7.42 Dalvik/2.1.0 (Linux; U; Android 5.1.1; Android SDK built for x86 Build/LMY48X) | Mozilla/5.0 (Linux; Android 5.1.1; Android SDK built for x86 Build/LMY48X) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Mobile Safari/537.36 |
Additionally module returns a set of constants, that are used in user agent string building.
For iOS:
- systemName
- systemVersion
- applicationName
- applicationVersion
- buildNumber
- darwinVersion
- cfnetworkVersion
- deviceName deprecated
- modelName
For Android:
- systemName
- systemVersion
- applicationName
- applicationVersion
- buildNumber
Versioning
Breaking History:
- 2.1.0 - support for tvos
- 2.0.0 - supports autolinking, native code refactoring, removes UIWebView,
getWebViewUserAgent()
returns promise - 1.0.6 - First release
License
MIT. Copyright (c) 2020 Tone T. Thangsongcharoen