我有一个MKMapView.有时在我的视图控制器被解雇后,我会得到一个EXC_BAD_ACCESS.
我打开了NSSZombies,它看起来像是MKMapView代表 - 我的视图控制器!- 正在被调用,尽管释放了子类MKMapView和UIViewController子类.我已经检查了,我的记忆管理是正确的.
这是怎么回事?
我看过其他关于此的报道,似乎都没有适用.我们的应用程序因频繁(但不可靠的可重现性)崩溃而瘫痪,如下所示:
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x333a6c98 objc_msgSend + 16
1 MapKit 0x30be52fc -[MKMapView annotationContainer:viewForAnnotation:] + 36
2 MapKit 0x30be4f8e -[MKAnnotationContainerView _addViewForAnnotation:] + 270
3 MapKit 0x30c0f164 -[MKAnnotationContainerView addViewForManagedAnnotation:notifyDelegate:] + 12
4 MapKit 0x30c0b874 -[MKMapView(UserPositioningInternal) _runPositioningChange] + 1036
5 MapKit 0x30c09a86 -[MKMapView(UserPositioningInternal) _startPositioningChange:] + 22
6 MapKit 0x30c0d04a -[MKMapView(UserPositioningInternal) locationManagerUpdatedLocation:] + 578
7 CoreFoundation 0x360bcefc -[NSObject(NSObject) performSelector:withObject:] + 16
8 CoreFoundation 0x360fa2f2 -[NSArray makeObjectsPerformSelector:withObject:] + 394
9 MapKit 0x30bfc802 -[MKLocationManager _reportLocationStatus:] + 34
10 …Run Code Online (Sandbox Code Playgroud)