在iPhone中移动地图应用程序后,请立即单击“后退”

在iPhone中移动地图应用程序后,请立即单击“后退”,iphone,google-maps,crash,Iphone,Google Maps,Crash,我遇到了这样一个场景:如果在地图未完全加载的情况下点击后退图标,则在移动地图后立即进入if 应用程序崩溃 我所能理解的是,由于加载仍在进行中,我轻触应用程序释放控制器,但google map在nsrunlop中异步加载(不确定)。所以这可能是问题所在,但我不确定 那么,有人知道会出现什么问题吗?有没有办法解决这个问题? 如果需要更多描述,请发表评论。听起来,当您关闭视图时,作为已完成地图加载的代理的对象已被解除分配,导致访问错误的崩溃 找到这些类型崩溃根源的一个好方法是使用工具(Xcode套件的

我遇到了这样一个场景:如果在地图未完全加载的情况下点击后退图标,则在移动地图后立即进入if 应用程序崩溃

我所能理解的是,由于加载仍在进行中,我轻触应用程序释放控制器,但google map在nsrunlop中异步加载(不确定)。所以这可能是问题所在,但我不确定

那么,有人知道会出现什么问题吗?有没有办法解决这个问题?
如果需要更多描述,请发表评论。

听起来,当您关闭视图时,作为已完成地图加载的代理的对象已被解除分配,导致访问错误的崩溃


找到这些类型崩溃根源的一个好方法是使用工具(Xcode套件的一部分)和僵尸搜索。

对于仍在寻找答案的人

实际发生的情况是,即使释放控制器导致应用程序崩溃,地图视图事件也会被触发


因此,在将objMKMapView的值设置为nil之前,解决方案是,您需要将objMKMapView.delegate的值设置为nil

发布一些代码,跟踪跟踪堆栈。放置调试器不会使应用程序崩溃,就好像我调试的映射完全加载一样,那么就没有问题了。有没有办法检测地图是否满载?是的,我也认为这就是问题所在。。但有什么东西可以让我们知道地图还没有加载,这样我就可以禁用导航栏,并阻止用户返回,直到地图完全加载