우선 사용자의 위치 정보를 불러와야 한다. 위치 정보를 가져오기 위해서 권한
을 설정한다.
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
권한을 설정했으면 requestPermission
과 onRequestPermissionResult
를 구현한다. requestPermission
은 권한을 요청하고 onRequestPermissonResult
는 권한 요청의 결과를 확인한다.
우선 companion object
로 요청할 권한들을 정의했다.
companion object {
private val permissions = arrayOf(
Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.ACCESS_FINE_LOCATION
)
private val backgroundPermissions = arrayOf(
Manifest.permission.ACCESS_BACKGROUND_LOCATION
)
const val REQUEST_ACCESS_LOCATION_PERMISSIONS = 100
const val REQUEST_ACCESS_BACKGROUND_LOCATION_PERMISSIONS = 101
}
요청할 권한들과 권한에 대한 고유값을 입력한다.
private fun requestLocationPermissions() {
ActivityCompat.requestPermissions(
this,
permissions,
REQUEST_ACCESS_LOCATION_PERMISSIONS
)
}