回答:
方法があるように見えます:
adbシェルdumpsysの場所> dumpsys.txt
これにより、すべての位置情報サービス情報を含むファイルが提供されます。このファイルを検索する'Last Known Locations'
と、次のようになります。
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}]}]
もちろん、デバイスでGPSプロバイダーを有効にしている場合、リストには別のエントリが含まれます。
Androidコードで説明すると、アプリがLocationManager.getLastKnownLocation()を使用するときに位置情報を取得する方法を見つけようとしました。少しフォローした後、私はここでLocationManagerServiceになりました。getLastLocationとダンプ関数も実装しています。
私が知る限り、座標はどのファイルにも保存されません。それらはハッシュマップのメモリに保存され、dumpsysコマンドのためにダンプされます。これは、ディレクトリ階層検索でgps情報を含むファイルが見つからなかった理由も説明します。
より標準的な形式でこの情報が必要な場合は、アプリのルートをたどり、このようなものを使用する必要があります。このアプリは、地理ベースのアプリにフィードできるGPSまたはKMLファイルで情報をエクスポートします。
PS:これは、ルート権限を取得していないデバイスでも同様に機能します。
adb shell
、Last Known Locations
情報は常に空です。
adb shell dumpsys location > dumpsys.txt
結果をファイルに出力します。