緯度経度情報を取得する(LocationSevicesを使う)
アンドロイド端末から座標データを取得する
必要な要素__パーミッション なんのクラスメソッドを使って取得するのか? ドキュメントの位置はどこか?
座標データの取得方法
概要
手続きは、FusedLocationProviderClientインスタンス(クライアント)を生成し、そのインスタンスでgetLastLocation()メソッドを実行するだけだ。
参考:
現在地の住所を表示する | Android デベロッパー | Android Developers
FusedLocationProviderClient | Android 用 Google API | Google Developers
パーミッションを追記
以下をマニフェストファイルに追記する。
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
LocationSevicesをインストール
以下をappレベルのGradleのdependenciesに追記する
implementation 'com.google.android.gms:play-services-location:17.0.0'
クライアントの作成方法
https://developer.android.com/training/location/retrieve-current?hl=ja#play-services
lateinit var fusedLocationClient: FusedLocationProviderClient fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
位置情報の取得
val coordinates = fusedLocationClient.lastLocation
これで座標データ(位置情報)を取得できる。
その他
マニフェストファイルに追加した情報は、dangerous レベルのパーミッションである。 パーミッションを解除するロジックを埋め込まないと座標点は取得する事ができない。
サンプルコード
GitHub - chiaki1990/GetCoordinatesSample_Kotlin