2012-01-31 111 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开始后,以检查是否正确定义。

相关问题