重新进入视图时 iPod 上的 MKMapView 崩溃

Posted

技术标签:

【中文标题】重新进入视图时 iPod 上的 MKMapView 崩溃【英文标题】:MKMapView crash on iPod when Re-enter in view 【发布时间】:2015-09-17 04:52:35 【问题描述】:

我使用 MKMapView,它在 iPhone、iPad 和模拟器上运行良好,但在 iPod 中,当我第二次进入视图时它崩溃(第一次运行良好)。我已经尝试过了,但它不适合我:

-(void) backButtonAction    
   
  [_mapView setDelegate:nil];  
  [self.navigationController popViewControllerAnimated:YES];   
 

当我尝试在 iPod 上执行代码时(第二次查看)。我收到一个错误(EXC_BAD_ACCESS(code=EXC_ARM_DA_ALIGN,address=0x494f6055))

【问题讨论】:

您的所有设备是否都使用相同的 ios 版本? @Goku No iPod on 8.3 and iPad on 8.1 好的。我认为这可能是一个弃用问题。接下来,能否尝试为 All Exceptions 开启断点。您可以在断点窗格中执行此操作,底部有一个 + 符号。单击此并添加异常断点。然后再试一次,看看它是否在有问题的代码行上崩溃。 @Goku :崩溃发生在以下线程上:EAGLContext_renderbufferStorageFromDrawable(EAGLContext*, objc_selector*, unsigned int, id) () libglInterpose.dylib`EAGLContext_renderbufferStorageFromDrawable(EAGLContext*, objc_selector*, unsigned int, id): 0xc133f0 : ldrex r0, [r5] 哇。没有把握。我做了一个快速搜索,这有帮助吗:***.com/questions/18326594/… 或这个***.com/questions/31398961/… 【参考方案1】:

通过此解决方案,不会调用 didUpdateUserLocation 方法,并且您无法从 didUpdateUserLocation 方法内部获取用户位置,但直到 Apple 未修复它。这是我从链接 EXC_BAD_ACCESS at lauch for EAGLContext renderbufferStorage: fromDrawable: in Cocos2d app whie debugging 获得的唯一解决方案 我这样做并消除了崩溃。

在 Xcode 中,转到 Product -> Scheme -> Edit Scheme ... 对于运行调试配置(左侧)选择“选项”(右侧)并将“GPU 帧捕获”配置为禁用。

【讨论】:

以上是关于重新进入视图时 iPod 上的 MKMapView 崩溃的主要内容,如果未能解决你的问题,请参考以下文章

MKMapView 重置回世界视图:重新烘焙

MKMapView 在 iPad 上的渲染问题

iphone 6 plus 上的 MKMapView 问题,视图中嵌入的地图不显示

SwiftUI:避免使用 MKMapView+UIViewRepresentable 在 TabView 中重新创建/重新渲染视图

滚动 MKMapView 时淡出弹出框

我可以重新定位已经放置在 MKMapView 上的 MKAnnotationView 吗?