2011-11-09 3 views

Odpowiedz

7

Kompas nie znajduje się na liście interakcji sprzętowych obsługiwanych przez symulator i nagłówek CLLocationManager. Dostępne raporty nie są dostępne na symulatorze.

Również w tym dokumencie:

http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html

Niektóre usługi lokalizacyjne wymagają obecności określonego sprzętu danego urządzenia. Na przykład informacja o nagłówku jest dostępna tylko pod numerem dla urządzeń zawierających kompas sprzętowy. Ta klasa definiuje kilka metod, których można użyć do określenia, które usługi są obecnie dostępne w ramach usługi .

Konkretnie CLLocationManager ma tę właściwość klasy w celu sprawdzenia, czy kompas jest dostępny:

+ (BOOL)headingAvailable 

Jeśli uruchomię to pod symulatorze:

NSLog(@"headingAvailable: %d", (int)[CLLocationManager headingAvailable]); 

Wyjścia:

2011-11-08 22:38:26.873 Craplet[39975:b603] headingAvailable: 0