Skip to content

Latest commit

 

History

History
97 lines (68 loc) · 2.93 KB

README.md

File metadata and controls

97 lines (68 loc) · 2.93 KB

React Native User Agent

Platforms Supported

  • iOS
  • Android

Getting Started Guide

  1. Add react-native-user-agent to your dependencies
yarn add react-native-user-agent

or, for npm use

npm install react-native-user-agent --save
  1. 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 manualy:

react-native link react-native-user-agent

For manual linking, please refer to:

Usage

import UserAgent from 'react-native-user-agent';

UserAgent.getUserAgent(); //synchronous

UserAgent.getWebViewUserAgent() //asynchronous
    .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.3.1
    • fix android gradle script
  • 2.3.0
    • unification for ios device names
    • fix android gradle script
    • add types definition
  • 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) 2018 Anton Bebnev.