0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Fused Location ProviderをGPSロガーとして使用する場合の最適設定を調べてみた

0
Posted at

はじめに

Android には Fused Location Provider(以下 FLP)という、GNSS(GPS)/ Wi-Fi / 携帯基地局などを統合して 位置情報 を取得できる API があります。

以前からこの API を使って自作の GPS ロガーアプリを運用していますが、ログの精度が安定しないと感じる場面があったため、過剰な位置情報更新を避けつつ、徒歩用途で実用的な設定を探る目的で簡単に検証しました。

本記事は 徒歩での利用を前提とした検証です。
なお、FLP 自体の技術解説は他記事に譲り、ここでは検証結果に絞ります。

検証環境

ハードウェア

種別
端末 Pixel 7
OS バージョン Android 12

検証に使用したコード

検証用にシンプルなテストアプリを作成しました。
アプリ内で Priority取得間隔(Interval) を設定でき、取得した位置情報をアプリ内の SQLite に保存します。

また、Foreground Service として稼働させているため、画面OFFやバックグラウンド移行後も計測を継続します。
※ 端末の「強制停止」などを行った場合は停止します。

検証条件

屋外での挙動を見たかったため、東京駅〜鎌倉橋を徒歩で移動し、途中で 西側へ一度曲がるルートで検証しました。
日時は 2025/04/20 15:00〜、天気は 晴れです。

image.png

検証結果

Priority の比較

まずは Priority を以下で比較しました。

  • PRIORITY_BALANCED_POWER_ACCURACY
  • PRIORITY_HIGH_ACCURACY

Interval は 30秒に固定しています。

可視化した HTML は以下です。

青が PRIORITY_BALANCED_POWER_ACCURACY、赤が PRIORITY_HIGH_ACCURACY です。
位置情報ログの点を丸で示し、それらを線で結んでいます。

観察としては、青(BALANCED)はログ点が少なく、曲がり角が軌跡に反映されていない結果となりました。

image.png

Interval の比較

次に Interval を変更した場合のログを比較しました。
Priority は PRIORITY_HIGH_ACCURACY に固定し、以下の Interval で記録しています。

  • 30秒(赤)
  • 20秒(緑)
  • 10秒(ピンク)
  • 5秒(オレンジ)

HTML は以下です。

30秒〜10秒は点の入り方がケースによってばらつきましたが、5秒ではログ点が明確に増え、結果として 移動の形状が追いやすい状態になりました。

image.png

まとめ

今回の条件(徒歩 + ビル街 + 晴れ)では、観察ベースで以下の設定が最も扱いやすい結果になりました。

  • Priority: PRIORITY_HIGH_ACCURACY
  • Interval: 5秒

今回は屋外・徒歩のみのため、今後は以下も追加で検証したいです。

  • 屋内(駅構内など)
  • 車・交通機関での移動
  • Interval を上げても形状を維持できる条件の把握(省電力寄りの設定探索)

出典

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?