2014-01-11 28 views
0

我在這裏有一個非常一致的問題,並且從字面上到處搜索都無濟於事。我一直在CocoaLibSpotify上遇到很多問題,而且這個錯誤僅僅是我的僱主浪費了更多的時間,但無論如何。CocoaLibSpotify:無法識別的登錄和搜索選擇器

每當我嘗試登錄或執行SPSearch時,都會遇到無法識別的選擇器,並且應用程序崩潰。以下是代碼。謝謝你的耐心!

SPDispatchAsync(^{ 
NSError *error = nil; 

//[SPSession class]; 
[SPSession initializeSharedSessionWithApplicationKey:[NSData dataWithBytes:&g_appkey length:g_appkey_size] 
              userAgent:@"com.mattie.montgomery.listenin" 
             loadingPolicy:SPAsyncLoadingManual 
               error:&error]; 

if (error != nil) { 
    NSLog(@"CocoaLibSpotify init failed: %@", error); 
    abort(); 
} 


[[SPSession sharedSession] setDelegate:self]; 


[[SPSession sharedSession] attemptLoginWithUserName:@"USERNAME" password:@"PASSWORD"]; 

    // playbackManager = [[SPPlaybackManager alloc] initWithPlaybackSession:[SPSession  sharedSession]]; 


    //[search addObserver:self forKeyPath:@"searchInProgress" options:NSKeyValueObservingOptionNew context:NULL]; 
    // search = [SPSearch searchWithSearchQuery:@"What is love" inSession:[SPSession sharedSession]]; 

});

這裏的例外:

2014年1月13日13:24:48.890 ListenIn [47201:4303] + [NSError spotifyErrorWithCode:]:無法識別的選擇發送到0x2cd8298類 2014年1月13日13點24分:48.979 ListenIn [47201:4303] *終止應用程序由於未捕獲的異常 'NSInvalidArgumentException',原因: '+ [NSError spotifyErrorWithCode:]:無法識別的選擇發送到0x2cd8298類' *第一擲調用堆棧: ( 0的CoreFoundation 0x030835e4 exceptionPreprocess + 180 1 libobjc.A.dylib 0x02e068b6 objc_exception_throw + 4 4 2的CoreFoundation 0x031207a3 + [NSObject的(NSObject的)doesNotRecognizeSelector:] + 275 3的CoreFoundation 0x0307390b __ 轉發 + 1019 4的CoreFoundation 0x030734ee _CF_forwarding_prep_0 + 14 5 ListenIn 0x00039a6b LOGGED_IN + 139 6 ListenIn 0x0018c1de sp_session_set_private_session + 538 7 ListenIn 0x000f0cf7 - [SPClientUpsellViewController .cxx_destruct] + 639639 8 ListenIn 0x0009c277 - [SPClientUpsellViewController .cxx_destruct] + 292887 9個ListenIn 0x0018af5f sp_session_process_events + 80 10 ListenIn 0x0003854c - [SPSession prodSessionForcefully] + 332 11 ListenIn 0x0003cf2c notify_main_thread_block_invoke + 44 12 ListenIn 0x0002b63d __54 + [SPSession dispatchToLibSpotifyThread:waitUntilDone:] _ block_invoke + 93 13的CoreFoundation 0x030421c0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK + 16 14的CoreFoundation 0x0300b3f9 CFRunLoopDoBlocks + 361 15的CoreFoundation 0x03029843 __CFRunLoopRun + 2355 16的CoreFoundation 0x03028ac3 CFRunLoopRunSpecific + 467 17 CoreFoundation 0x03033e61 CFRunLoopRun + 129 18 ListenIn 0x0002b905 + [SPSession runBackgroundRunloop:] + 437 19 Foundation 0x02a5e597 - [NSThread main] + 76 20基金會0x02a5e4f6 _ NSThread _main + 1275 21 libsystem_pthread.dylib 0x05dc15fb _pthread_body + 144 22 libsystem_pthread.dylib 0x05dc1485 _pthread_struct_init + 0 23 libsystem_pthread.dylib 0x05dc6cf2 thread_start + 34 ) 的libC++ abi.dylib:端接未捕獲的類型爲NSException的例外

+0

有人嗎?我今天在這工作了三個小時。 –

+1

不要把你的用戶名和密碼放在網上! –

+0

Woops!完全忘記了那裏。 –

回答

0

答案是添加-ObjC鏈接器標誌並將Facebook API添加到項目中。感謝iKenndac提供的建議。

0

首先,請勿在公共Internet上放置帳戶憑證,如用戶名和密碼。

至於你的問題,粘貼在一大塊代碼中並不是很有用 - 哪一行實際上會產生錯誤?

您註釋掉了底部的代碼錯誤順序 - 您無法在觀察者創建之前添加觀察者。

最後,請重新閱讀自述文件,特別是關於線程的部分。你只需要在非常特殊的情況下使用SPDispatchAsync,你不應該像這樣正常使用它。

+0

我在登錄和搜索時遇到了錯誤。它有或沒有SPDispatch。 –

+0

使用例外信息更新了主文章 –

+0

請仔細閱讀自述文件中的「Building - iOS」部分。看起來你錯過了一個必需的鏈接器標誌(-ObjC)。 – iKenndac

相關問題