2012-01-31 2 views
0

iPhone 용 Dropbox SDK를 사용하여 사용자 보관 용 계정에 연결하고 파일을 업로드하는 앱을 만들었습니다. XCode 3.2.5를 사용 중이며 iPhone 시뮬레이터는 4.2입니다. 내 응용 프로그램은 시뮬레이터에서 훌륭하게 작동하지만 장치에서 시도 할 때 충돌이 발생합니다. 다음은 코드가 충돌하는 코드 라인입니다.Dropbox 세션을 설정하는 동안 장치에서 Iphone 앱이 충돌 함

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

디버그를 시도하면 객체 kDBRootAppFolder를 인식 할 수 없습니다.

내가이 변수가 정의 된 곳을 확인하고는 내가 디버그 시도하는 동안

extern NSString *kDBRootAppFolder; 

으로 "DBSession.h"라는 보관 용 SDK의 파일 내부에 위치하고 실행했다, 나는 것을 발견 kDBRootAppFolder가 알 수없는 유형임을 나타냅니다.

그런 다음 시뮬레이터에서 디버깅을 시도했는데 완벽하게 실행되었습니다. 인쇄 할 때 kDBRootAppFolder의 값이 '샌드 박스'였습니다.

저는이 런타임 오류가 장치에서 발생하는 이유를 알지 못합니다. 도와주세요.

+0

충돌의 실제 오류/원인은 무엇입니까? 이 경우 디버거의 정보는 다른 프로파일을 작성하기 때문에 빨간색 청어 일 수 있습니다. –

+0

@quixoto 여러 번 디버깅을 시도했지만 그 부분이나 다른 곳에서 오류가 발생하는 이유를 찾을 수 없습니다. 나는 포럼에서 제안 된 것처럼 "kdbRootAppFolder"를 @ "sandbox"로 대체하려고 시도했지만 여전히 특정 라인에서 충돌했다. – An1Ba7

+0

충돌이 발생하면 콘솔에서 무엇이라고 말합니까? EXC_BAD_ACCESS? 다른 것? –

답변

0

일반적으로 개체가 불량 시간에 해제 될 때 발생합니다.

는이 일을 나던 경우, kDBRootAppFolder

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

에 유지 올바르게 정의되어 있는지 확인하기 전에 dbSession의 개시 후 NSLog(@"%@", kDBRootAppFolder);를 사용하십시오,이보십시오.

관련 문제