Чому в Android виникають такі проблеми з запам’ятовуванням останнього місця знань?


12

Я ніколи не зміг зрозуміти, як Android запам'ятовує своє останнє місце знань. Якщо, здається, пам’ятаю місцеположення кілька годин тому, але не кілька секунд тому. Я думаю, що найкраще навести приклад того, що я маю на увазі.

Я нещодавно був у районі затоки. Я використовував карти Google на своєму Android, і мені трапилось біля Google Campus в Mountain View. Я використовував карти з включеною GPS, і через деякий час я отримав належний замок GPS, який використовував для навігації по цій місцевості.

Коли пізніше я повернувся до Сан-Франциско, я використовував його, щоб об'їхати місто. Щоразу, коли я вмикав карти, я повертав своє місце повернення в гори. Приблизно через 10 секунд після отримання блокування GPS я отримав своє справжнє місцезнаходження. Якщо я вимкнув телефон і ввімкнув його знову через кілька секунд, те ж саме сталося - воно вважає, що я перебуваю десь на години раніше, а потім починає своє фактичне місцезнаходження. Це трапляється весь час - пам’ятаючи, де я був години тому, а не там, де я був кілька моментів тому. Колись я певний час був у районі, тепер це стає новим "останнім місцем знань".

Чому, як тільки я отримую точне блокування GPS, Android не реєструє це як "останнє відоме місце" замість одного з попереднього?

Відповіді:


3

Не повна відповідь, але деяка довідкова інформація:

  • У вашому пристрої може бути більше ніж один постачальник послуг, наприклад, один на основі GPS і той, який базується на мобільному телефоні.
  • У Android немає жодної останньої відомої позиції. У кожного постачальника послуг є своя остання відома позиція.
  • Місцеположення має додаткові показники, такі як точність, коли він був записаний, що було записано (наприклад, чи є компонент висоти тощо)

Таким чином, це залежить від того, якого постачальника послуг використовує додаток, і що може залежати від або навіть змінитись на основі динамічних параметрів. Наприклад, при запуску він може попросити Android отримати найшвидшого постачальника місцеположення, а потім перейти на найточніший, щоб поступово отримати кращу помилку.


Це дійсно хороше, стисле пояснення. Дякую.
Нік Діксон

Це також має сенс, оскільки коли я повертався в місто, у мене не було wifi / мобільних даних. У кампусі Google був wifi. Таким чином, карти повинні були спочатку використовувати "грубе" (тобто wifi) останнє місцезнаходження (яке було в Google), а потім, коли через декілька секунд GPS натиснув, оновиться. Я б все-таки подумав, що GPS-розташування було б свіжішим / кращим для читання.
Тім

ця відповідь більше нагадує коментар. і якщо груба локація має менший пріоритет, це пояснить ще менше, чому телефон повернув перегляд mnt пізніше.
gcb

2

Наскільки я розумію, Android використовує грубі та дрібнозернисті оновлення місця розташування, і ці оновлення також можуть мати різні показники якості. Можливо, у додатку Карти Google не було сигналу GPS та Wi-Fi достатньо довго у вашому новому місці, щоб бути достатньо високою якістю, щоб бути останнім місцем знань.

Документи розробника за адресою http://developer.android.com/guide/topics/location/obthing-user-location.html наводять кілька прикладних моделей для отримання місцезнаходження користувачів, які можуть дати деяке розуміння того, як він працює. Але я б здогадався, що Карти Google і, мабуть, інші карти роблять свою справу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.