แอปพลิเคชันเกือบทั้งหมดใช้บริการระบุตำแหน่ง ดังนั้นจึงจำเป็นต้องมีความเข้าใจอย่างถ่องแท้เกี่ยวกับตำแหน่ง ในโพสต์นี้ เราจะมาดูวิธีรับละติจูดและลองจิจูดของตำแหน่งปัจจุบัน
สำหรับสิ่งนี้ เราจะใช้ CLLocationManager คุณสามารถอ่านเพิ่มเติมได้ที่นี่https://developer.apple.com/documentation/corelocation/cllocationmanager
เรากำลังพัฒนาแอปพลิเคชันตัวอย่าง ซึ่งเราจะพิมพ์ละติจูดและลองจิจูดของผู้ใช้ด้วยวิธี viewDidLoad หรือพิมพ์ด้วยการแตะปุ่มบน UILabel ตามความต้องการ
มาเริ่มกันเลย
ขั้นตอนที่ 1 − เปิด Xcode → New Projecr → Single View Application → ตั้งชื่อมันว่า "Location"
ขั้นตอนที่ 2 − เปิดไฟล์ info.plist และเพิ่มคีย์ด้านล่าง
สิ่งเหล่านี้จำเป็นเมื่อคุณทำสิ่งที่เกี่ยวข้องกับตำแหน่ง เราต้องขออนุญาตจากผู้ใช้
ขั้นตอนที่ 3 − ใน ViewController.swift
นำเข้า CoreLocation
ขั้นตอนที่ 4 − สร้างวัตถุของ CLLocationManager
var locationManager =CLLocationManager()
ขั้นตอนที่ 5 − ในเมธอด viewDidLoad ให้เขียนโค้ดด้านล่าง
locationManager.requestWhenInUseAuthorization()var currentLoc:CLLocation!if(CLLocationManager.authorizationStatus() ==.authorizedWhenInUse ||CLLocationManager.authorizationStatus() ==.authorizedAlways) { currentLoc =locationManager.location พิมพ์ (currentLoc.coordinate.latitude) พิมพ์ (currentLoc.coordinate.longitude)}
ที่นี่ “requestWhenInUseAuthorization” หมายถึงขออนุญาตใช้บริการตำแหน่งในขณะที่แอปอยู่เบื้องหน้า
ขั้นตอนที่ 6 - เรียกใช้แอปพลิเคชันเพื่อรับละติจูดและลองจิจูด ค้นหารหัสที่สมบูรณ์
นำเข้า UIKitimport CoreLocationclass ViewController:UIViewController { var locationManager =CLLocationManager () แทนที่ func viewDidLoad () { super.viewDidLoad () locationManager.requestWhenInUseAuthorization () var currentLoc:CLLocation! if (CLLocationManager.authorizationStatus () ==.authorizedWhenInUse || CLLocationManager.authorizationStatus () ==.authorizedAlways) { currentLoc =locationManager.location พิมพ์ (currentLoc.coordinate.latitude) พิมพ์ (currentLoc.coordinate.longitude) } }}ก่อน>