Obtener idioma del dispositivo Android o iOS o navegador web usando React Native

Para obtener el idioma del dispositivo usando React Native tenemos que utilizar el siguiente método:

Primero importamos los métodos Platform y NativeModules de react-native.

import { Platform, NativeModules } from 'react-native';

Y con el siguiente método obtenemos el idioma:

function idioma() {
  try {
    const deviceLanguage =
      Platform.OS === 'ios'
        ? NativeModules.SettingsManager.settings.AppleLocale ||
        NativeModules.SettingsManager.settings.AppleLanguages[0] //iOS 13
        : NativeModules.I18nManager.localeIdentifier;
    var deviceLanguageSplit = deviceLanguage.split("_")[0];

    return deviceLanguageSplit;
  } catch (error) {
    var idiomaDevuelve = "es"; //Idioma por defecto
    //Comprueba idioma de navegador:
    if (navigator.language != null) {
      idiomaDevuelve = navigator.language.split("-")[0];
    }
     return idiomaDevuelve;//Por defecto en navegador
  }
}

Deja un comentario