react-native

Platform Module

Find the OS Type/Version

The first step is to import Platform from the ‘react-native’ package like so:

import { Platform } from 'react-native'

After you’ve done that, you can go ahead and access the OS type through Platform.OS allowing you to use it in conditional statements like

const styles = StyleSheet.create({
  height: (Platform.OS === 'ios') ? 200 : 100,
})

If you want to detect the Android version, you can use Platform.Version like so:

if (Platform.Version === 21) {
  console.log('Running on Lollipop!');
}

For iOS, Platform.Version is returning a String, for complex condition don’t forget to parse it.

if (parseInt(Platform.Version, 10) >= 9) {
    console.log('Running version higher than 8');
}

If the platform specific logic is complex, one can render two different files based on platform. Ex:

  • MyTask.android.js
  • MyTask.ios.js

and require it using

const MyTask = require('./MyTask')

This modified text is an extract of the original Stack Overflow Documentation created by the contributors and released under CC BY-SA 3.0 This website is not affiliated with Stack Overflow