我正在尝试使用重要更改位置服务。我在OS Mavericks上使用Swift和XCode。我正在尝试增强我根据教程构建的iOS应用程序。
在我的AppDelegate.swift
文件中,我创建了以下方法来初始化我的位置管理器服务:
func initializeLocationManager() {
// instance of location manager class
var locationManager = CLLocationManager()
locationManager.delegate = self // error here
locationManager.desiredAccuracy = kCLLocationAccuracyKilometer
locationManager.requestAlwaysAuthorization()
locationManager.startUpdatingLocation()
}
但是在第4行代码中,我收到一条错误消息:
键入' AppDelegate'不符合协议' CLLocationManagerDelegate'
为什么我收到此错误?我该如何解决?
答案 0 :(得分:2)
错误说:
类型'AppDelegate'不符合协议'CLLocationManagerDelegate'
所以:
您收到此消息是因为名为AppDelegate
的类不符合协议CLLocationManagerDelegate
。
您可以通过使该类符合该协议来解决此问题。因此,实现协议所需的方法,然后声明您的类符合它。
答案 1 :(得分:1)
您必须在AppDelegate类中至少提供CLLocationManager.didUpdateLocations
函数。