开发中经常会使用第三方SDK,尤其是那些看不到源代码的SDK。出现了崩溃真是无处下手。由于最近又遇到一个之前遇到的错误,今天分享一下:
运行程序会出现如下错误信息:
was compiled with optimization - stepping may behave oddly; variables may not be available.
看着很熟悉,一般出现在项目Release
模式下有断点。
但是,项目中分明没有断点,而且错误停留在了第三方类的方法中。所以绝对就是第三方的问题了。
我在正常开发中,如果方法的参数是block类型的,我不使用的话就会传nil。但是查看第三方的开发文档会发现他们实现了这个block。所以,当我尝试实现这个block的时候,就不会出现崩溃信息。
所以,很难受。这种问题都不做判空处理的吗?想想自己最开始使用block的时候也是直接调用,最后遇到了崩溃便养成了习惯:调用block前做个判空处理。但是,别人可能不是这个习惯,所以出现了这种问题真的是很难找到的。