在 iOS 6 中,CLLocationManager 的 purpose
属性,描述使用位置服务的原因 (@property(copy, nonatomic) NSString *purpose
) 已被弃用.
Apple 提出了什么替代方案(如果有的话)?
最佳答案
iOS 6 中 purpose
属性的替换是一个名为 NSLocationUsageDescription
(又名“隐私 - 位置使用说明”)的新 Info.plist 键。
关键是documented in the Information Property List Key Reference但不幸的是,它没有在 purpose
属性的弃用说明中提及。
但是,CLLocationManager.h
确实有这样的注释:
*
Deprecated. Set the purpose string in Info.plist using key NSLocationUsageDescription.
在您的代码中,您可以同时设置键和 purpose
属性(但是如果/当该方法在未来)。
如果在 iOS 6 下运行,位置管理器将使用 key 。
在低于 iOS 6 的系统下运行时,该键将被忽略并使用 purpose
属性。
关于ios - 替换 CLLocationManager 的 "purpose"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12562152/