为什么我可以在没有 "import CoreLocation" 的情况下访问 iPhone 的位置?
Why can I access iPhone's location without "import CoreLocation"?
我可以使用以下代码访问设备的位置。我正在使用 MapKit 而不是 CoreLocation。我以为这个实例 CLLocationManager()
和方法 requestAlwaysAuthorization()
只能通过 CoreLocation 框架使用?
import UIKit
import MapKit
class ViewController: UIViewController, CLLocationManagerDelegate {
var locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
locationManager.delegate = self
self.locationManager.requestAlwaysAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
for currentlocation in locations{
print("\(index): \(currentlocation)")
}
}
}
MapKit 导入 CoreLocation,因此您不需要。就像你不需要导入 Foundation 因为你从 UIKit 中得到它一样。
我可以使用以下代码访问设备的位置。我正在使用 MapKit 而不是 CoreLocation。我以为这个实例 CLLocationManager()
和方法 requestAlwaysAuthorization()
只能通过 CoreLocation 框架使用?
import UIKit
import MapKit
class ViewController: UIViewController, CLLocationManagerDelegate {
var locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
locationManager.delegate = self
self.locationManager.requestAlwaysAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
for currentlocation in locations{
print("\(index): \(currentlocation)")
}
}
}
MapKit 导入 CoreLocation,因此您不需要。就像你不需要导入 Foundation 因为你从 UIKit 中得到它一样。