๐ŸŒฑ SeSAC

[SeSAC] 220811 TIL

taeeekki 2022. 8. 15. 13:27

MapView

์ธํ„ฐํŽ˜์ด์Šค ๋นŒ๋” ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ๋ฒ•์„ ์ฒดํฌํ•ด๋ณด์ž

import MapKit
// ํ™”๋ฉด์— MKMapView ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์•„์›ƒ๋ ›์„ ์—ฐ๊ฒฐํ•˜์ž
@IBOutlet weak var mapView: MKMapView!
let center = CLLocationCoordinate2D(latitude: 37.000000, longitude: 126.000000)
// Region ์„ค์ •
// ์ง€๋„ ์ค‘์‹ฌ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณด์—ฌ์งˆ ๋ฒ”์œ„ ์„ค์ •
let region = MKCoordinateRegion(center: center, latitudinalMeters: 1000, longitudinalMeters: 1000)
mapView.setRegion(region, animated: true)
// Annotation ์„ค์ • (ํ•€ ์ถ”๊ฐ€)
let annotation = MKPointAnnotation()
annotation.coordinate = center
annotation.title = "์œ„์น˜"
mapView.addAnnotation(annotation)

 


 

CLLocation

์œ„์น˜ ์ •๋ณด์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๊ธ€์€ ๋‹ค๋ฅธ ๊ธ€์—์„œ ์‚ดํŽด๋ณด๋„๋ก ํ•œ๋‹ค.

ํ๋ฆ„

  1. iOS ์‹œ์Šคํ…œ ๊ถŒํ•œ - ํ™œ์„ฑํ™” - ๊ถŒํ•œ ์š”์ฒญ ๊ฐ€๋Šฅ - ๊ถŒํ•œ ํ—ˆ์šฉ - ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๊ฐ€๋Šฅ
  2. iOS ์‹œ์Šคํ…œ ๊ถŒํ•œ - ํ™œ์„ฑํ™” - ๊ถŒํ•œ ์š”์ฒญ ๊ฐ€๋Šฅ - ๊ถŒํ•œ ํ—ˆ์šฉ - ์ถ”ํ›„ ๊ถŒํ•œ ๊ฑฐ๋ถ€ - iOS ์‹œ์Šคํ…œ ์„ค์ • ์œ ๋„
  3. iOS ์‹œ์Šคํ…œ ๊ถŒํ•œ - ํ™œ์„ฑํ™” - ๊ถŒํ•œ ์š”์ฒญ ๊ฐ€๋Šฅ - ๊ถŒํ•œ ๊ฑฐ๋ถ€ - iOS ์‹œ์Šคํ…œ ์„ค์ • ์œ ๋„
  4. iOS ์‹œ์Šคํ…œ ๊ถŒํ•œ - ๋น„ ํ™œ์„ฑํ™” - ๊ถŒํ•œ ์š”์ฒญ ๋ถˆ๊ฐ€๋Šฅ - iOS ์‹œ์Šคํ…œ ์„ค์ • ์œ ๋„

iOS ์‹œ์Šคํ…œ ๊ถŒํ•œ

  • ์‹œ์Šคํ…œ ์„ค์ •์—์„œ ์œ„์น˜ ์„œ๋น„์Šค ํ™œ์„ฑํ™”/๋น„ํ™œ์„ฑํ™” ๊ฐ€๋Šฅ
  • ์‹œ์Šคํ…œ ๊ถŒํ•œ ํ™œ์„ฑํ™” : ๊ถŒํ•œ ์š”์ฒญ ๊ฐ€๋Šฅ
  • ์‹œ์Šคํ…œ ๊ถŒํ•œ ๋น„ํ™œ์„ฑํ™” : ๊ถŒํ•œ ์š”์ฒญ ๋ถˆ๊ฐ€๋Šฅ

๊ถŒํ•œ ์„ค์ •(info.plist)


  • ํ•„์š”ํ•œ ๊ถŒํ•œ๋งŒ ์„ค์ •ํ•ด์•ผ ํ•˜๊ณ , description๋„ ๋ฐ˜๋“œ์‹œ ๊ตฌ์ฒด์ ์œผ๋กœ ์ ์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

๊ถŒํ•œ ์Šน์ธ(CLAuthorizationStatus)

  • notDetermined
  • restricted, denied
  • authorizedAlways
  • authorizedWhenInUse

๊ถŒํ•œ ์Šน์ธ ์ƒํƒœ์— ๋”ฐ๋ผ์„œ ์ ์ ˆํ•œ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

์œ„์น˜ ์ •ํ™•๋„(CLAccuracyAuthorization)

  • iOS 14.0+
  • fullAccuracy
  • reducedAccuracy