728x90
이전 게시물에 이어서 현재위치 좌표를 찍어보는 것을 해보도록 하겠습니다 .
https://jangstory.tistory.com/41
카카오 Map API 를 사용하기 위해선 당연히 카카오 개발자 홈페이지에서 앱 등록이 필요합니다. 밑의 사이트 가이드를 보고 따라해주세요.
https://apis.map.kakao.com/android/guide/#step1
메소드 하나를 만들어주겠습니다. 저는 앞에 게시물에서 퍼미션 권한을 미리 다 설정을 했기 때문에 MissingPermission 으로 진행하였습니다.
MapView.CurrentLocationTrackingMode 에는
TrackingModeOnWithoutHeading ,
TrackingModeOnWithoutHeadingWithoutMapMoving,
TrackingModeOff
등등 다양한 옵션이 있으니 용도에 맞게 사용하세요~
startTracking
}
// 현재 사용자 위치추적
@SuppressLint("MissingPermission")
private fun startTracking() {
binding.mapView.currentLocationTrackingMode =
MapView.CurrentLocationTrackingMode.TrackingModeOnWithoutHeading //이 부분
val lm: LocationManager = getSystemService(Context.LOCATION_SERVICE) as LocationManager
val userNowLocation: Location? = lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER)
//위도 , 경도
val uLatitude = userNowLocation?.latitude
val uLongitude = userNowLocation?.longitude
val uNowPosition = MapPoint.mapPointWithGeoCoord(uLatitude!!, uLongitude!!)
// 현 위치에 마커 찍기
val marker = MapPOIItem()
marker.itemName = "현 위치"
marker.mapPoint =uNowPosition
marker.markerType = MapPOIItem.MarkerType.BluePin
marker.selectedMarkerType = MapPOIItem.MarkerType.RedPin
binding.mapView.addPOIItem(marker)
}
// 위치추적 중지
private fun stopTracking() {
binding.mapView.currentLocationTrackingMode = MapView.CurrentLocationTrackingMode.TrackingModeOff
}
override fun onDestroy() {
super.onDestroy()
stopTracking()
}
마커 같은 경우에는 내 위치가 아니더라도 , 위도, 경도를 입력하여 좌표를 구할 수 있으면 객체를 만들어서
어디든지 좌표를 찍을 수 있습니다!
이 외에
현재위치가 아니라 특정 위치를 지정해 시작을 하고 싶다면 TrackingModeOff 로 설정하시고 원하는 좌표를 구한 후
binding.mapView.setMapCenterPoint(MapPoint.mapPointWithGeoCoord(37.53737528, 127.00557633), true)
다른 여러가지 기능들이 가이드에 많이 나와 있으니 참조하세요!
https://apis.map.kakao.com/android/guide/#mapview
'안드로이드' 카테고리의 다른 글
[android / Kotlin] 카카오맵 Api 장소 검색 결과 리사이클러 뷰에 추가하기 (9) | 2022.03.03 |
---|---|
[Android] 카카오맵 Api 장소 검색하기 (Retrofit) (0) | 2022.03.03 |
[Android] 카카오맵 Api 사용하기 (0) | 2022.03.02 |
[Android / Kotlin] 네이버 Map API 간단히 사용하기 (0) | 2022.02.28 |
android studio 원격 연결 ,디버깅 (feat .adb ) (0) | 2022.02.28 |