#android #google_maps_api #геолокация
Как можно узнать валюту той страны, в которой на данный момент находится пользователь Android-приложения? Предполагается, что пользователь часто путешествует и меняет страну. Подскажите какой-нибудь сервис с открытым API.
Ответы
Ответ 1
Решение с конца: https://developer.android.com/reference/java/util/Currency.html Класс который отдает код валюты, символ и т.п. Делается из локали: Currency currency = Currency.getInstance(locale); Локаль можно сделать из координат: Geocoder geocoder = new Geocoder(ctx, Locale.getDefault()); List addresses = geocoder.getFromLocation(latitude, longitude, 1); if (addresses.size() > 0) { Address address = addresses.get(0); regionCode = address.getCountryCode(); } Статья от первоисточника: https://developer.android.com/training/location/display-address.html regionCode должен содержать 2х символьный код, например 'RU','US','DE'. Из этого кода и делаем локаль: Locale whereMI = new Locale(regionCode); Мои извинения за бессвязность кода, надрал из разных проектов по частям. П.С. Еще вместо GPS для получения кода страны можно использовать ip-api.com/json . С известными оговорками конечно.
Комментариев нет:
Отправить комментарий