Yanıtlar:
Bir yol var gibi görünüyor:
adb kabuk dumpsys konumu> dumpsys.txt
Bu size tüm konum hizmeti bilgilerini içeren bir dosya verecektir. Bu dosyada arama yapın 'Last Known Locations'
ve şöyle bir şey görmelisiniz:
passive: Location[network 92.915479,55.610965 acc=22 et=+1d4h10m34s255ms {Bundle[{noGPSLocation=Location[network 92.915479,55.610965 acc=22 et=+1d4h10m34s255ms {Bundle[{coarseLocation=Location[network 92.918919,55.603997 acc=2000 et=+1d4h10m34s255ms]}]}], networkLocationSource=cached, networkLocationType=wifi, travelState=stationary}]}]
network: Location[network 92.915479,55.610965 acc=22 et=+1d4h10m34s255ms {Bundle[{noGPSLocation=Location[network 92.915479,55.610965 acc=22 et=+1d4h10m34s255ms {Bundle[{coarseLocation=Location[network 92.918919,55.603997 acc=2000 et=+1d4h10m34s255ms]}]}], networkLocationSource=cached, networkLocationType=wifi, travelState=stationary}]}]
Elbette, cihazda GPS sağlayıcısını etkinleştirdiyseniz, listede başka bir giriş daha bulunur.
Android koduna göre, LocationManager.getLastKnownLocation () kullandıklarında uygulamaların konumu nasıl aldıklarını bulmaya çalıştım. Aşağıdaki biraz sonra, burada LocationManagerService sona erdi . getLastLocation ve bir döküm fonksiyonu uygular.
Koordinatlar anlatabildiğim kadarıyla hiçbir dosyada saklanmaz. Hafızada bir hashmap içinde saklanır ve dumpsys komutu için dökülürler. Bu aynı zamanda bir dizin heirarchy aramasının neden gps bilgisi olan herhangi bir dosyayı göstermediğini açıklar.
Bu bilgileri daha standart bir biçimde istiyorsanız, uygulama yolunu izlemeniz ve bunun gibi bir şeyle gitmeniz gerekir . Bu uygulama, bilgileri bir GPS veya coğrafi tabanlı uygulamalara aktarabileceğiniz bir KML dosyasında dışa aktarır.
Not: Bu, root olmayan cihazlarda da çalışır.
adb shell
, Last Known Locations
hatta el GPS'i etkinleştirmek bilgi her zaman boş olduğunu.
adb shell dumpsys location > dumpsys.txt
sonucu dosyaya çıktılamak.