2012-01-31 68 views
0

我製作了一個應用程序,使用DropBox SDK for iPhone連接到用戶的Dropbox帳戶並上傳文件。我使用的是XCode 3.2.5,而iPhone Simulator是4.2。我的應用程序在模擬器上運行良好,但在設備上嘗試時會崩潰。以下是代碼行崩潰Iphone App在建立DropBox會話時在設備上崩潰

DBSession* dbSession = [[[DBSession alloc] 
           initWithAppKey:kDropBoxAppKey 
           appSecret:kDropBoxAppSecret 
           root:kDBRootAppFolder] autorelease]; 

當我試圖調試,它不能識別對象kDBRootAppFolder。

我檢查了哪裏這個變量的定義,它位於被稱爲「DBSession.h」 Dropbox的SDK的文件中作爲

extern NSString *kDBRootAppFolder; 

雖然我試着調試和運行它,我發現,它顯示kDBRootAppFolder是未知類型。

然後,我試着在模擬器上進行調試,它在那裏完美運行,當我打印它時,kDBRootAppFolder的值是'沙箱'。

我真的不知道爲什麼這個運行時錯誤發生在設備中。請幫忙。

+0

崩潰的實際錯誤/原因是什麼?在這種情況下,調試器的信息很可能是一個紅鯡魚,因爲你正在構建一個不同的配置文件。 – 2012-01-31 06:34:30

+0

@quixoto我試着調試過很多次,但找不到它在該部分或其他地方給出錯誤的原因。我甚至嘗試用@「sandbox」替換kDBRootAppFolder,正如論壇中所建議的那樣,但是,它仍然在特定行中崩潰。 – An1Ba7 2012-01-31 06:48:45

+0

當控制檯發生崩潰時,它會說什麼? EXC_BAD_ACCESS?還有別的嗎? – 2012-02-03 15:40:19

回答

0

這通常發生在對象在不好的時間釋放時。

試試這個,注意kDBRootAppFolder

DBSession* dbSession = [[[DBSession alloc] 
           initWithAppKey:kDropBoxAppKey 
           appSecret:kDropBoxAppSecret 
           root:[kDBRootAppFolder retain]] autorelease]; 

的保留,如果它doesn't工作,使用前NSLog(@"%@", kDBRootAppFolder);和dbSession開始後,以檢查是否正確定義。

相關問題