В моем Application
, я использую Payment Gateway
. На основании User Country
я должен изменить Payment method type
. Используя Locale
, я могу получить Страну, но она дает Device Configured/Manufactured
стране, которая не полезна для меня. Так что я пытаюсь Google Play Services (Location Services)
. Как я могу получить только Country name
с помощью этого API
. Я не хочу Широта Долгота и т. Д. СпасибоКак получить название страны с помощью служб местоположения в Android?
0
A
ответ
0
Для этого вы можете использовать Google Current Place Api.
PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
.getCurrentPlace(mGoogleApiClient, null);
result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
@Override
public void onResult(PlaceLikelihoodBuffer likelyPlaces) {
for (PlaceLikelihood placeLikelihood : likelyPlaces) {
Log.i(TAG, String.format("Place '%s' has likelihood: %g",
placeLikelihood.getPlace().getName(),
placeLikelihood.getLikelihood()));
}
likelyPlaces.release();
}
});
3
Если устройство является телефоном, вы можете получить страну таким образом.
public static String getUserCountry(Context context) {
try {
final TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
final String simCountry = tm.getSimCountryIso();
if (simCountry != null && simCountry.length() == 2) { // SIM country code is available
return simCountry.toLowerCase(Locale.US);
}
else if (tm.getPhoneType() != TelephonyManager.PHONE_TYPE_CDMA) { // device is not 3G (would be unreliable)
String networkCountry = tm.getNetworkCountryIso();
if (networkCountry != null && networkCountry.length() == 2) { // network country code is available
return networkCountry.toLowerCase(Locale.US);
}
}
}
catch (Exception e) { }
return null;
}
, а затем, может получить доступ к нему:
Locale loc = new Locale("", getUserCountry(this));
TextView.setText(loc.getDisplayCountry());
PS: вам нужно добавить разрешение:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
Смежные вопросы
- 1. Как получить название страны с помощью геокода?
- 2. Как получить название страны
- 3. android получить текущее название местоположения
- 4. C#: Получить название страны из кода страны
- 5. Джанго-страны и TastyPie: Получить название страны
- 6. Как я могу узнать название страны?
- 7. Включить код страны в название страны с помощью массива PHP
- 8. Как получить текущее название страны в java?
- 9. Как получить название страны из страны Id in angularjs
- 10. Как получить код страны и название страны, используя IP
- 11. Использование служб местоположения Android в приложении XamarinForms
- 12. Получить название страны из кода страны в .net
- 13. Преобразовать код страны в название страны
- 14. название страны - возврат код страны
- 15. Как получить название страны из xmlParser
- 16. Как получить название страны из кода валюты?
- 17. Как получить название страны на основе ip
- 18. (Android) Как получить текущее местоположение с помощью Служб Google Play
- 19. Получить название страны из кода страны в python?
- 20. Ошибка Android с помощью служб местоположения Google Play (ModuleDescriptor Class)
- 21. php facebook API получить название страны
- 22. Название страны от php
- 23. PHAsset получить название местоположения фотографии
- 24. Googlemaps Обратное GeoCoding Получить название страны, страны Великобритании
- 25. Название страны с zend locale
- 26. Получить название города из местоположения
- 27. Получить название страны и временную метку для текущей страны
- 28. NSLocale и название страны
- 29. Получить имя и название страны по адресу
- 30. Как получить кратчайшее название страны из массива в C#
Если все, что вам нужно, это страна пользователь, почему бы не получить страну текущей SIM-карты? – OBX
это один возможный опция. Если пользователь использует планшет Как я могу получить? – Moses