Question: I want to get the country I am in. I tried 

```
String locale = context.getResources().getConfiguration().locale.getCountry();

```

but I always get back US although I'm located in Europe.

I also tried 

```
TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
String countryCode = tm.getSimCountryIso(); 

```

but with no luck. I always get back US. Any help is appreciated.

Answer: 
Locale will give you current Locale setting of your device which must be US English - it doesn't give you your current location.

You can try getting the current location using LocationManager to get current lat longs, and then use reverse geocoding service of Google Maps APIs to get the current country in real time.
The first one gets the country **according to the phone settings** (this can be changed by the user), whereas the **second would gets the country of the sim card** (can not be changed by the user)

So you have the choice what fits your needs best.