NSRangeException崩溃无法删除“标题”的观察者

时间:2016-06-22 19:38:41

标签: ios objective-c mkmapview mapkit

Fabric / Crashlytics正在记录以下崩溃(到目前为止发生了很多崩溃),我无法弄清楚导致它的原因:

Cannot remove an observer<VKMapAnnotationTrackingCameraController 0x155058110> for the key path "heading" from <MKUserLocation 0x153b60790> because it is not registered as an observer.

enter image description here

我认为这来自我的MKMapView,我允许用户将地图类型设置为MKUserTrackingModeFollowWithHeading,但我没有添加观察者。

这可能只是一个MapKit错误吗?到目前为止,过去30天内已经发生了32起事故,这似乎很多。

1 个答案:

答案 0 :(得分:0)

从OS 4.x开始,我遇到了与MapKit类似的崩溃。 “类似”我的意思是它与KVO和观察者有关,但我不记得细节。

问题是:我有一个类实现MKAnnotation协议。但在这个类中,我在不使用KVO(直接通过相应的ivar)访问坐标属性: _coordinate = .... 代替 self.coordinate = ...

Mapkit似乎现在(从OS 4开始)依靠KVO通知来监控注释位置。