private String formatLocation(Location location) {
if (location == null)
return "";
return String.format(
"Coordinates: lat = \n%1$.6f\n, lon = \n%2$.6f\n, time = \n%3$tF %3$tT",
location.getLatitude(), location.getLongitude(), new Date(
location.getTime()));
}
НО:
Если язык телефона стоит русский - приходят координаты в стиле "53,66678" (запятая)
А на англ.языке телефона "53.66678" (точка)
В приложении еще происходит работа с координатами и этот элемент (точка/запятая) один из ключевых.
Как привести данные геолокации к одному виду независимо от языка устройства?
Попробуйте так:
return String.format(
Locale.US,
"Coordinates: lat = \n%1$.6f\n, lon = \n%2$.6f\n, time = \n%3$tF %3$tT",
location.getLatitude(), location.getLongitude(), new Date(
location.getTime()));
либо так:
Locale locale = new Locale("en_US");
return String.format(
locale,
"Coordinates: lat = \n%1$.6f\n, lon = \n%2$.6f\n, time = \n%3$tF %3$tT",
location.getLatitude(), location.getLongitude(), new Date(
location.getTime()));
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
При чтении байтов из файла с использовании RandomAccessFile нормально выводится в консоль только латиницаЧтоб выводилась нормально кирилица необходимо...
Что означает синтаксис {{ }}(две двойных фигурных скобки) в Java?
Нагуглил несколько статей: в одной говорится, что синглтон идеален для хранения глобальных переменныхВ другой - что он (синглтон) таки может...