我在我的支持iOS8的应用程序中编写了以下代码。该应用程序在iOS8上运行良好,令我惊讶的是,在iOS7上也可以正常工作。我的问题是,为什么这个代码不会在iOS7上崩溃?
谢谢你提前。
#import <CoreLocation/CoreLocation.h>
.
.
CLAuthorizationStatus authStatus = [CLLocationManager authorizationStatus];
.
// TODO some of these statuses are iOS8 only not iOS7 - need to check.
if ((authStatus == kCLAuthorizationStatusAuthorized) || (authStatus == kCLAuthorizationStatusAuthorizedAlways) ||
(authStatus == kCLAuthorizationStatusAuthorizedWhenInUse)) {
<some actual code>
}
常量kCLAuthorizationStatusAuthorizedWhenInUse和kCLAuthorizationStatusAuthorizedAlways是iOS8中引入的,因此我原以为在iOS7模拟器中运行时会发生问题,但它却完美运行。这是否是在真实的iOS7设备上应该担心的问题(我已经没有了iOS7设备),还是说有什么规定这段代码在iOS7上可用,而我不知道呢?谢谢你提前。