Ответ 1
Замена свойства purpose
в iOS 6 - это новый ключ Info.plist с именем NSLocationUsageDescription
(aka "Конфиденциальность - описание использования местоположения" ).
Ключ задокументирован в ключевой справочной информации списка свойств информации, но, к сожалению, он не упоминается с примечанием о ноте свойства purpose
.
Однако CLLocationManager.h
имеет этот комментарий:
*
Устаревший. Задайте целую строку в Info.plist, используя ключ NSLocationUsageDescription.
В вашем коде вы можете установить как ключ, так и свойство purpose
(но вы можете проверить, отвечает ли менеджер местоположений на этот селектор первым, если/когда этот метод фактически будет удален в будущем).
Если вы используете под управлением iOS 6, менеджер местоположений будет использовать ключ.
При запуске меньше чем iOS 6 ключ будет проигнорирован и будет использовано свойство purpose
.