이 시리즈는 간단한 기능 구현에 대한 글이며
Kotlin을 통해 개발하였고 결과물은 구글 플레이스토어에 등록하였다.
다운 받으러 가기

관련 글 보러가기
안드로이드 마스크 앱 만들기 (1) - 공적 마스크 api와 네이버 지도 api
안드로이드 마스크 앱 만들기 (2) - GPS로 현 위치 좌표 알아내기
안드로이드 마스크 앱 만들기 (3) - 공적 마스크 api 사용하기
안드로이드 마스크 앱 만들기 (4) - 네이버 지도에 표시하기 (완결)
코드 다운
https://github.com/Junhwan26/MaskApp
Junhwan26/MaskApp
Contribute to Junhwan26/MaskApp development by creating an account on GitHub.
github.com
구현하고자 하는 기능은 내 위치로 부터 1km이내의 마스크 판매소와 재고량이기 때문에 현재의 위도, 경도, 반경을 파라미터로 넘겨줘야 한다.
https://8oi9s0nnth.apigw.ntruss.com/corona19-masks/v1/storesByGeo/json?lat=$위도&lng=$경도&m=$반경
다음과 같은 형태로 넘겨주면 된다.
본격적으로 코드를 작성해 보자. 우선 위치에 대한 접근이 가능하도록 권한을 부여해야한다.
FINE_LOCATION
: 정확한 위치에 접근할 수 있는 권한COARSE_LOCATION
: 대략적인 위치에 접근할 수 있는 권한
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
GPS 좌표를 가져오는 코드는 현재 위치 주소 가져오기 :: 멈춤보단 천천히라도 블로그를 참고하였다.
GPS 퍼미션 확인과 GpsTracker 부분은 위 블로그에서 가져오면 된다.
class MainActivity : AppCompatActivity() {
var flag: Boolean = true
private var gpsTracker: GpsTracker? = null
val pharmacy = ArrayList<Pharmacy>()
var REQUIRED_PERMISSIONS = arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION
)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
if (!checkLocationServicesStatus()) {
showDialogForLocationServiceSetting()
} else {
checkRunTimePermission()
}
gpsTracker = GpsTracker(this@MainActivity)
var latitude: Double = gpsTracker!!.latitude
var longitude: Double = gpsTracker!!.longitude
Toast.makeText(
this@MainActivity,
"현재위치 \n위도 $latitude\n경도 $longitude",
Toast.LENGTH_LONG
).show()
}
}
이제 현 위치의 좌표를 알았으니 다음 글에서는 Json을 파싱하는 법에 대해 다뤄보도록 하겠다.
'Android Studio > 우리 동네 마스크' 카테고리의 다른 글
안드로이드 마스크 앱 만들기 (4) - 네이버 지도에 표시하기 (완결) (0) | 2020.03.18 |
---|---|
안드로이드 마스크 앱 만들기 (3) - 공적 마스크 api 사용하기 (11) | 2020.03.15 |
안드로이드 마스크 앱 만들기 (1) - 공적 마스크 api와 네이버 지도 api (2) | 2020.03.12 |