我正在使用CLGeoCoder进行正向地理编码。它在OS > 5.0的设备上工作正常。但是,如果设备的操作系统低于5.0,应用程序就会崩溃。由于CLGeoCoder是在5.0中引入的,所以我添加了一个条件,如下所示。
Class clGeoCoderClass = NSClassFromString(@"CLGeocoder");
if (clGeoCoderClass != nil) {
//Use CLGeoCoder.
}
I'm getting a crash in devices under OS < 5.0 and crash log shows.
<Notice>: dyld: Symbol not found: _OBJC_CL
<Notice>: ASS_$_CLGeocoder.
How to handle this crash issues and 发布于 2012-09-06 07:43:57
CLGeoCoder在早于iOS 5.0的iOS中不可用。如果你真的想使用iOS < 5.0,有一个更早的地理编码器,MKReverseGeocoder。但是,我建议您切换到iOS 5.0或更高版本,并使用CLGeocoder。以下是地理编码指南Geocoding Location的参考。
希望这能有所帮助!
发布于 2012-09-06 08:21:38
有大量的私有类,我认为对于特定的类,NSClassFromString检查是不够的问题,检查结果是否对5.0以下的iOs是积极的,如果是这样,你将不得不寻找额外的条件。我将研究最新的方法,这些方法很可能是专门为iOs 5公共接口开发的,因此在旧框架中不可用。
https://stackoverflow.com/questions/12290528
复制相似问题