Итак, я разработал отдельное приложение компаса (стрелка вращается, чтобы указать на фиксированную точку широты/долготы), которое отлично работает как отдельный проект, но когда я пришел, чтобы включить его в более широкий проект, у меня возникла проблема.
Сначала я получаю семантическое предупреждение (несовместимые типы указателей, назначаемые «CLLocationManager*» из «CLLocation *__strong») для:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation {
if (newLocation.horizontalAccuracy >= 0) {
self.recentLocation = newLocation; (WARNING HERE)
CLLocation *POI2location = [[CLLocation alloc]
initWithLatitude:kPOI2Latitude
longitude:kPOI2Longitude];
CLLocationDistance delta = [POI2location
distanceFromLocation:newLocation];
И далее я получаю фатальную ошибку (свойство «координата» не найдено в объекте типа «CLLocationManager») для:
- (void)locationManager:(CLLocationManager *)manager
didUpdateHeading:(CLHeading *)newHeading {
if (self.recentLocation != nil && newHeading.headingAccuracy >= 0) {
CLLocation *POI2Location = [[CLLocation alloc]
initWithLatitude:kPOI2Latitude
longitude:kPOI2Longitude];
double course = [self headingToLocation:POI2Location.coordinate
current:recentLocation.coordinate]; (WARNING HERE)
По какой-то причине ему не нравится 'recentLocation' сейчас, тогда как раньше все работало отлично. Может ли кто-нибудь указать мне, что мне не хватает. Я уверен, что это очевидно для кого-то с большим опытом, чем я.
Спасибо заранее.