美文网首页面试题
百度全景地图跳转页面再返回页面时崩溃的解决办法

百度全景地图跳转页面再返回页面时崩溃的解决办法

作者: 大一号 | 来源:发表于2016-08-19 22:05 被阅读444次

    近期我在使用百度地图API时,将百度的小全景地图加了一个点击该视图跳转页面的效果,如下图所示:

    跳转前的视图:

    跳转后的视图:

    但是在返回第一个页面(dismiss)时, 程序会崩溃,崩溃原因如下:

    出现这种崩溃是因为出现了野指针的异常, 当前我们使用的Xcode都在ARC模式下, 而百度地图的API在MRC模式下, 这种MRC与ARC的混编就会出现野指针异常.

    解决办法:

    首先开启僵尸检测, 锁定会出现野指针异常的对象(通过崩溃信息中的地址), 然后将对象的指针置为nil.

    个人理解:

    在百度API封装的全景地图中, 会在地图消失(跳转页面)时释放全景地图的对象, 而viewDidLoad方法只会执行一次, 所以全景地图只会初始化一次, 这样就造成了程序崩溃.

    PS: 个人理解, 如有错误, 欢迎各位大牛指导赐教!

    相关文章

      网友评论

      • 5c88a8b4a811:我也遇到了这个问题 怎么解决呢
        大一号:@uph 用的是全景图view 但是里边的SDK是基于MRC的 会出现野指针 需要置空
        5c88a8b4a811:@大一号 你现在大头针上面的这个气泡view,还是用的全景view(BaiduPanoramaView *)的这个view吗?还是换成了 全景静态图?
        大一号:@uph 开启僵尸检测 定位到出现野指针的地方 就可以解决了...

      本文标题:百度全景地图跳转页面再返回页面时崩溃的解决办法

      本文链接:https://www.haomeiwen.com/subject/rvstlttx.html