Проблема проследить маршрут между двумя точками - PullRequest
0 голосов
/ 23 июня 2011

Я пытаюсь отследить маршрут между двумя точками в моем приложении для iPhone, используя cloudmade, приложение вылетает, и я получил этот отчет:

2011-06-23 17:07:56.153 TopStation[1307:9b03] +[NSArray arrayWithContentsOfURL:headers:]: unrecognized selector sent to class 0x2bdb4c4
2011-06-23 17:07:56.154 TopStation[1307:9b03] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSArray arrayWithContentsOfURL:headers:]: unrecognized selector sent to class 0x2bdb4c4'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x02b79919 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x0298e5de objc_exception_throw + 47
    2   CoreFoundation                      0x02b7b4eb +[NSObject(NSObject) doesNotRecognizeSelector:] + 187
    3   CoreFoundation                      0x02aeb116 ___forwarding___ + 966
    4   CoreFoundation                      0x02aeacd2 _CF_forwarding_prep_0 + 50
    5   TopStation                          0x00072bbf -[CMRoutingManager findRouteFrom:] + 580
    6   Foundation                          0x0012f2a8 -[NSThread main] + 81
    7   Foundation                          0x0012f234 __NSThread__main__ + 1387
    8   libSystem.B.dylib                   0x910aa7fd _pthread_start + 345
    9   libSystem.B.dylib                   0x910aa682 thread_start + 34
)
terminate called after throwing an instance of 'NSException'
Program received signal:  “SIGABRT”.
Data Formatters unavailable (Error calling dlopen for: "/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Resources/PBGDBIntrospectionSupport.A.dylib": "dlopen(/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Resources/PBGDBIntrospectionSupport.A.dylib, 10): no suitable image found.  Did find:
    /Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Resources/PBGDBIntrospectionSupport.A.dylib: out of address space")
(gdb) 

Мой код такой, как показано ниже:

- (void)viewDidLoad {
    [super viewDidLoad];
    [RMMapView class];
    TokenManager* tokenManager = [[TokenManager alloc] initWithApikey:@"a53b3323702f42fc8486e24df34f9ac3"];
    _routingManager = [[CMRoutingManager alloc] initWithMapView:mapView tokenManager:tokenManager];
    _routingManager.delegate = self;
    CLLocationCoordinate2D from;
    from.latitude= 53.358311;
    from.longitude=-6.481934;
    CLLocationCoordinate2D to;
    to.latitude=52.657616;
    to.longitude=-8.635254;
    CMRoutingVehicle transport = CMVehicleCar;//CMVehicleWalking or CMVehicleBike
    [_routingManager findRouteFrom:from to:to onVehicle:transport];
}

Любая помощь будет оценена :) 1007 *

1 Ответ

1 голос
/ 24 июня 2011

Это исключение

 2011-06-23 17:07:56.154 TopStation[1307:9b03] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSArray arrayWithContentsOfURL:headers:]: unrecognized selector sent to class 0x2bdb4c4'

говорит о том, что вы отправляете сообщение классу, у которого нет подходящего ему метода.+[NSArray arrayWithContentsOfURL:headers:]

мое предположение: вы не импортируете категорию в NSArray, которая объявляет и реализует +arrayWithContentsOfURL:headers:

И убедитесь, что вы добавили флаги компоновщика -ObjC -all_load

...