关于百度地图addAnnotations的bug

1.bug的出现情况:

程序一跑就crash掉了,log显示为数组越界
通过断点定位到bug出现在这一行代码:

    [_mapView addAnnotations:newAnnotationList];

这就颇为尴尬了,这是百度的api,又不开源,鬼知道它为什么闪掉了...(若是自己的代码还能通过断点,再进一步缩小bug的范围),断点一过立马就闪了,有点懵,咋办?

2.解决

通过这个方法点进去发现百度地图api的官方有这么一行注释

/**
 *向地图窗口添加一组标注,需要实现BMKMapViewDelegate的-mapView:viewForAnnotation:函数来生成标注对应的View
 *@param annotations 要添加的标注数组
 */
- (void)addAnnotations:(NSArray *)annotations;

也就是说其会触发-mapView:viewForAnnotation:

至于- (void)addAnnotations:(NSArray *)annotations;因为不开源,看不到实现的代码,那是没办法的了,或许可以在-mapView:viewForAnnotation:这个方法找找原因,

3.最后我想说的是

遇到类似的问题,或许可以在下游代码中寻找解决的办法。
ps:上面那个问题解决了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容