fornewid / naver-map-compose

NAVER Map Android SDK for Jetpack Compose 🗺
https://fornewid.github.io/naver-map-compose/
Apache License 2.0
115 stars 7 forks source link

LocationTrackingMode.Face... #66

Closed isyuun-pettip closed 8 months ago

isyuun-pettip commented 9 months ago

컴포즈 전반적인 문제가 아닌가 좀 걱정인데요... LocationTrackingMode.Face 모드시 핸드폰 방향과 일치 하지 않는것 같습니다...컴포즈로 작성된 네이버맵의 공통적인 문제인지... 네이버맵 SDK 와 비교하면 확실히 전혀 업데이트가 안됩니다...아래 화면 보시면 화면이 회전이 되지 않습니다.

컴포즈데모앱 네이버데모앱

fornewid commented 9 months ago

@isyuun-carepet 이 부분은 논이슈로 구현이 되지 않아 동작하지 않습니다. Compose와는 무관한 이슈입니다.

네이버지도 SDK에서 제공하는 FusedLocationSource에는 setCompassEnabled()가 구현되어 있는데요. FusedLocationSource는 반드시 Activity / Fragment가 있어야만 사용할 수 있어서 naver-map-compose에서는 다시 구현을 해야 했구요. 이 부분이 구현되어야 동작시킬 수 있습니다.

네이버지도 SDK 샘플의 아래 부분 참고 부탁드립니다. https://github.com/navermaps/android-map-sdk/blob/eae22190cf9f679493a2be61f77bb35e39bc48ce/app/src/main/java/com/naver/maps/map/demo/java/location/LocationTrackingActivity.java#L107

fornewid commented 8 months ago

naver-map-compose 1.5.1 버전에 구현하여 반영되었습니다. https://github.com/fornewid/naver-map-compose/releases/tag/v1.5.1


사용방법은 locationTrackingMode에 따라 rememberFusedLocationSource()isCompassEnabled 값을 true로 설정해주시면 됩니다.

+   val isCompassEnabled = when (locationTrackingMode) {
+       LocationTrackingMode.Follow,
+       LocationTrackingMode.Face -> true
+       else -> false
+   }
    NaverMap(
-       locationSource = rememberFusedLocationSource(),
+       locationSource = rememberFusedLocationSource(isCompassEnabled = isCompassEnabled),
        properties = MapProperties(locationTrackingMode = locationTrackingMode),
        uiSettings = MapUiSettings(
            isLocationButtonEnabled = true,
        )
    )