Ios Xcode 8.2应用程序崩溃-[viewcontroller.cxx_destruct]符号化崩溃报告
应用程序正在经历以下崩溃,无法理解此崩溃背后的原因。这个崩溃报告是我从应用商店得到的。这是坠机报告屏幕截图Ios Xcode 8.2应用程序崩溃-[viewcontroller.cxx_destruct]符号化崩溃报告,ios,objective-c,xcode,crash-reports,crittercism,Ios,Objective C,Xcode,Crash Reports,Crittercism,应用程序正在经历以下崩溃,无法理解此崩溃背后的原因。这个崩溃报告是我从应用商店得到的。这是坠机报告屏幕截图 它主要影响iOS 10.2。在这门课上,我使用谷歌地图、Pageviewcontroller和定时器。所以,任何人都可以告诉我如何解决这个问题?由于使用addObserverforKeyPath:@“myLocation”选项:NSKeyValueObservingOptionNew从谷歌地图获取用户当前位置,所以发生了此崩溃 在解除谷歌地图的锁定时,此时您需要删除此观察者。否则应用程序
它主要影响iOS 10.2。在这门课上,我使用谷歌地图、Pageviewcontroller和定时器。所以,任何人都可以告诉我如何解决这个问题?由于使用addObserver
forKeyPath:@“myLocation”选项:NSKeyValueObservingOptionNew
从谷歌地图获取用户当前位置,所以发生了此崩溃
在解除谷歌地图的锁定时,此时您需要删除此观察者。否则应用程序将崩溃,并出现以下错误
NSInternalInconsistencyException:在仍向其注册键值观察器时,释放了类GMSMapView的实例0x1759f350。当前观察信息:(上下文:0x0,属性:0x177a4490>)
在将Google地图添加到mapView之前,您需要添加Observer,如下所示:
// Listen to the myLocation property of GMSMapView.
[mapView_ addObserver:self
forKeyPath:@"myLocation"
options:NSKeyValueObservingOptionNew
context:NULL];
self.view = mapView_;
// Ask for My Location data after the map has already been added to the UI.
dispatch_async(dispatch_get_main_queue(), ^{
mapView_.myLocationEnabled = YES;
});
#pragma mark - KVO updates
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context {
if (!firstLocationUpdate_) {
// If the first location update has not yet been received, then jump to that
// location.
firstLocationUpdate_ = YES;
CLLocation *location = [change objectForKey:NSKeyValueChangeNewKey];
mapView_.camera = [GMSCameraPosition cameraWithTarget:location.coordinate
zoom:14];
}
}
然后添加此代码以删除观察者
- (void)dealloc {
[mapView_ removeObserver:self
forKeyPath:@"myLocation"
context:NULL];
}
有关更多详细信息:请提供异常断点此崩溃报告是我从App Store获得的。在测试/调试时,我没有发现此问题/崩溃。@AntonyRaphel请他们提供您无法复制的步骤,他们会提供帮助,或者他们一定已经给出了复制步骤,请仔细检查他们的响应。我通过存档并单击崩溃段按钮获得此报告。然后我选择了这个版本@我要问谁?AntonyRaphel:我以为你在苹果的iTunesConnect部分得到了这个,所以我告诉你向苹果询问步骤。虽然崩溃看起来像是代码中的内存泄漏。