#iphone #objective-c #ios #xcode #core-location
#iPhone #objective-c #iOS #xcode #ядро-местоположение
Вопрос:
Я знаю, что теперь есть способ имитировать местоположение, но есть ли способ имитировать значения компаса?.
Ответ №1:
Compass отсутствует в списке аппаратных взаимодействий, поддерживаемых симулятором, и CLLocationManager сообщает о наличии заголовков, что он недоступен в симуляторе.
Кроме того, в этом документе:
Некоторые службы определения местоположения требуют наличия определенного оборудования на данном устройстве. Например, информация о курсе доступна только для устройств, содержащих аппаратный компас. Этот класс определяет несколько методов, которые вы можете использовать, чтобы определить, какие службы доступны в данный момент.
В частности, у CLLocationManager есть это свойство класса, чтобы проверить, доступен ли компас:
(BOOL)headingAvailable
Если я запущу это под симулятором:
NSLog(@"headingAvailable: %d", (int)[CLLocationManager headingAvailable]);
Выводит:
2011-11-08 22:38:26.873 Craplet[39975:b603] headingAvailable: 0