Androidで位置情報を取得する

Androidで位置情報を取得する方法の勉強を兼ねてKotlinでアプリを作成しました。

GooglePlayServices API群のFusedLocationProviderClientを使い位置情報を取得します。
遅延ループで5秒ごとに画面に現在の時刻と緯度経度を表示しています。

位置情報を取得するために必要なパーミッションの確認を行い、
未許可ならダイアログを表示し許可してもらう。
その後、リクエストに対応する設定を確認し必要な設定がなされていなければ、
ダイアログを表示し設定変更を許可してもらいます。

パーミッションの確認と、リクエストに対応する設定の確認が終わったら
5秒ごとに最後に取得した位置情報を画面に表示するループを開始し、
FusedLocationProviderClientのrequestLocationUpdatesメソッドで位置情報の取得を開始します。
位置情報の更新時のコールバックでは、文字列を画面に表示させています。

outputは画面表示用のメソッドです。

最新の情報に更新された位置情報の受け取りは
コールバックの非同期処理で行うので
一定時間間隔で表示するのには向いていませんでした。
なので、画面表示時の最新のデータではありませんが
最後に更新された位置情報を表示するようにしました。
位置情報は周辺環境にも左右されますがそれなりに誤差のあるデータなので
数秒程度前のデータであれば問題ないかと思います。

水曜担当:Tanaka




アプリ関連ニュース

お問い合わせはこちら

お問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。

tel. 06-6454-8833(平日 10:00~17:00)

お問い合わせフォーム