我正在为iOS编写静态库。我想以编程方式确定CoreLocation是否已添加到项目中,有没有办法做到这一点?
答案 0 :(得分:3)
可能类似于:
if(NSClassFromString(@"CLLocationManager"))
{
NSLog(@"CoreLocation is available");
}
会这样做。 NSClassFromString接受NSString并检查运行时中是否存在该名称的类。如果是,则返回Class
对象,否则返回nil。那里的if语句实际上与nil相比。
所以,您正在应用的逻辑是“当前存在一个名为CLLocationManager的类吗?”,它是检查CoreLocation是否已加载的代理,因为它是该框架的基本类之一。