와챠의 우당탕탕 코딩 일기장

[안드로이드] 사용자 위치 가져와서 날씨 정보 설정하기 본문

코딩 일기장/Android(Kotlin)

[안드로이드] 사용자 위치 가져와서 날씨 정보 설정하기

minWachya 2021. 7. 30. 21:56
반응형

https://min-wachya.tistory.com/163

 

[안드로이드] 최신 기상청 단기예보 API 활용하기(초단기예보, Json)

올해 1학기 때 과제로 기상청 동네 예보 API를 사용한 적이 있었는데... 7월 초에 이런 메일이 왔다. 동네 예보 API가 종료된다고... 물론 단기 예보 단위가 상세화 되는 건 좋다~ 기존에 있던 코드

min-wachya.tistory.com

이전 게시글에 이어서 이번엔 사용자의 현재 위치를 가져오는 것을 추가해봤다.

여기에 생략한 내용들 다 위에 있음

 

위치 가져올 때 권한 설정하는 것도 필요해서 스플래시도 넣었다.

스플래시 화면에서 권한 설정하게 하고 권한 얻었을 때만 메인 액티비티로 넘어가는 식이다.

api 불러올 때 위치 인자만 바뀐 거라 크게 눈에띄게 달라진 점은 없다.

 


공식문서

 

 

build.gradle 설정

내 위치 찾기할 때 권한 필요해서build.gradle

권한 설정 하기 위한 라이브러리 추가
implementation "io.github.ParkSangGwon:tedpermission:2.3.0"


AndroidManifest 설정
위치 가져오기 위한 라이브러리 추가
implementation 'com.google.android.gms:play-services-location:18.0.0'

 

대략적인 위치, 상세 위치 얻기 위한 권한 추가
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

실시간 위치 정보 엑세스 권한 추가
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />


Splash.kt : 스플래시 화면 및 권한 묻기

아래 포스트 참고

https://min-wachya.tistory.com/144

 

[안드로이드] 스플래시 1초간 보여주기

1, 스플래시 액티비티(Splash.kt) 생성 2, AndroidMAnifest.xml에 등록 스플래시 액티비티 제일 먼저 방문하기위해 android:name=".Splash" android:theme="@style/SplashTheme"> 로 수정 및 추가 추가 3, res > v..

min-wachya.tistory.com


MainActivity.kt : 현재 사용자의 위치를 위경도로 가져와서 격자 좌표로 변환한 후 날씨 정보 불러오기


Common.kt : baseTime 생성하는 함수, 위경도를 격자 좌표로 변환하는 함수가 공통 함수여서 여기 넣어둠


다음에 해볼 것

  • 사용자 현재 위치 가져와서 위경도 값을 직접 좌표 값으로 변환
  • 위젯 만들기
  • 가로로 슬라이드하는 리사이클러뷰(?) 만들어보기

 

 

반응형
Comments