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

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

跳转前的视图:

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

跳转后的视图:

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

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


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

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

解决办法:

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

个人理解:

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

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

你可能感兴趣的:(百度全景地图跳转页面再返回页面时崩溃的解决办法)