Get device location settings without using GPS tracker or by telephony (SIM card) (Android only)
yarn add react-native-device-country
or
npm install react-native-device-country
Don't forget to run pod install
after that!
import DeviceCountry from 'react-native-device-country';
// ...
DeviceCountry.getCountryCode()
.then((result) => {
console.log(result);
// {"code": "BY", "type": "telephony"}
})
.catch((e) => {
console.log(e);
});
TYPE_TELEPHONY
for getting country code from SIM card
import DeviceCountry, {
TYPE_TELEPHONY,
TYPE_CONFIGURATION,
TYPE_ANY,
} from 'react-native-device-country';
DeviceCountry.getCountryCode(TYPE_TELEPHONY)
.then((result) => {
console.log(result);
// {"code": "PT", "type": "telephony"}
})
.catch((e) => {
console.log(e);
});
or TYPE_CONFIGURATION
for getting country code from phone language settings on Android
DeviceCountry.getCountryCode(TYPE_CONFIGURATION)
.then((result) => {
console.log(result);
// {"code": "RU", "type": "config"}
})
.catch((e) => {
console.log(e);
});
TYPE_ANY
will be used by default. It tries to use TYPE_TELEPHONY
(on Android) and fallbacks with TYPE_CONFIGURATION
, if devive without SIM card.
See the contributing guide to learn how to contribute to the repository and the development workflow.
MIT