Я пытаюсь использовать функцию геолокации с Windows Phone 8.1, и она работает, когда эмулируемый Windows Phone имеет свои региональные установка на «English (United State)», но мое приложение нацелено в основном на французских людей, и когда я пытаюсь использовать региональные настройки (по умолчанию на моем компьютере), «French (France)» значения долготы и ширины несущественны, поскольку они округлены.Geolocator.GetGeopositionAsync() возвращает округленные значения, если региональные настройки не установлены на «English (United States)»
Мой код:
Geolocator watcher = new Geolocator();
watcher.DesiredAccuracy = PositionAccuracy.High;
Geoposition position = await watcher.GetGeopositionAsync();
double lat = position.Coordinate.Point.Position.Latitude;
double lon = position.Coordinate.Point.Position.Longitude;
С региональной настройки на "English (United государства)", лат и долготу получить такие значения, как "48.12345", когда я держу/"Французский (Франция)" регионального значения по умолчанию, они получают «48.0» (и значения уже неверны в объект наблюдателя).
Я действительно пробовал много вещей (я подозреваю, что децимальный разделитель виноват, может быть, симулятор геолокации отправил значение типа «48,12345», но разбор этого значения вышел из моей области, в запечатанные функции). Так что я пытался изменить региональный формат в приложениях разными способами, но пока ничего не работает.
Кому-то известно об обходном пути? (Я нашел несколько подобных случаев в Интернете с немецкими разработчиками, но я действительно не нашел решение ...)
Работает нормально, мой телефон. Я изменил область на fr-FR. – kernanb