Mengapa Android memiliki masalah seperti mengingat lokasi tahu terakhir?


12

Saya tidak pernah bisa mengetahui cara Android mengingat lokasi terakhir yang diketahui. Jika sepertinya mengingat lokasi dari beberapa jam yang lalu tetapi tidak beberapa detik yang lalu. Saya pikir yang terbaik untuk memberikan contoh tentang apa yang saya maksud.

Saya baru-baru ini di Bay Area. Saya menggunakan peta Google di Android saya dan kebetulan berada di sekitar Kampus Google di Mountain View. Saya menggunakan peta dengan GPS diaktifkan dan setelah beberapa saat saya mendapat kunci GPS yang tepat yang saya gunakan untuk navigasi di sekitar area.

Ketika saya kembali ke San Francisco nanti saya menggunakannya untuk berkeliling kota. Setiap kali saya menyalakan peta, lokasi saya kembali ke tampilan Mountain. Sekitar 10 detik kemudian setelah mendapat kunci GPS saya mendapatkan lokasi saya yang sebenarnya. Jika saya mematikan telepon dan menghidupkan lagi beberapa detik kemudian hal yang sama terjadi - saya pikir saya berada di suatu tempat saya beberapa jam sebelumnya dan kemudian menendang dengan lokasi saya yang sebenarnya. Ini terjadi sepanjang waktu - mengingat di mana saya berada beberapa jam yang lalu, bukan di tempat saya beberapa saat yang lalu. Setelah saya telah berkeliling suatu daerah untuk jangka waktu tertentu ini sekarang menjadi "lokasi tahu terakhir" yang baru.

Mengapa, setelah saya mendapatkan kunci GPS yang akurat, apakah Android tidak mendaftarkan ini sebagai "lokasi terakhir yang diketahui" alih-alih dari yang sebelumnya?

Jawaban:


3

Bukan jawaban yang lengkap, tetapi beberapa informasi latar belakang:

  • Perangkat Anda dapat memiliki lebih dari 1 penyedia lokasi, mis. Satu berdasarkan GPS dan satu berdasarkan menara ponsel yang dapat dilihatnya.
  • Android tidak memiliki satu pun posisi terakhir yang diketahui. Setiap penyedia lokasi memiliki posisi terakhir yang diketahui.
  • Lokasi memiliki metrik tambahan, seperti akurasi, ketika direkam, apa yang direkam (misalnya apakah ia memiliki komponen ketinggian dll)

Jadi itu tergantung pada penyedia lokasi mana aplikasi menggunakan dan yang dapat bergantung pada atau bahkan berubah berdasarkan parameter dinamis. Misalnya saat start-up, ia bisa meminta Android untuk penyedia lokasi tercepat untuk pergi dan kemudian beralih ke yang paling akurat untuk secara bertahap mendapatkan perbaikan yang lebih baik.


Ini penjelasan yang sangat bagus dan singkat. Terima kasih.
Nick Dixon

Ini juga masuk akal karena ketika saya kembali ke kota saya tidak memiliki data wifi / seluler. Di kampus Google ada wifi. Jadi peta mula-mula harus menggunakan lokasi terakhir diketahui 'kasar' (yaitu wifi) (yang di Google) dan kemudian ketika GPS menendang dalam beberapa detik kemudian pembaruan. Saya akan berpikir masih bahwa lokasi GPS akan menjadi lebih segar / lebih baik membaca.
Tim

jawaban ini lebih seperti komentar. dan jika lokasi kasar kurang diprioritaskan, itu akan menjelaskan lebih sedikit mengapa telepon kembali tampilan mnt nanti.
gcb

2

Ini adalah pemahaman saya bahwa Android menggunakan pembaruan lokasi tipe kasar dan berbutir halus dan pembaruan ini dapat memiliki metrik kualitas yang berbeda juga. Bisa jadi aplikasi Google Maps tidak memiliki sinyal GPS dan Wifi yang cukup lama di lokasi baru Anda untuk menjadi kualitas yang cukup tinggi untuk menjadi lokasi tahu terakhir.

Dokumen pengembang di http://developer.android.com/guide/topics/location/obtaining-user-location.html memberikan beberapa contoh model untuk mendapatkan lokasi pengguna yang mungkin memberikan beberapa wawasan tentang cara kerjanya. Tapi saya kira Google Maps, dan mungkin peta lain, melakukan hal mereka sendiri.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.