ASIHTTPRequest在生产版本中失败

时间:2012-02-03 05:08:38

标签: ios asihttprequest

所以我遇到了一个很大的问题。似乎ASIHTTPRequest只是不想在生产构建中工作 一切都在调试中很好用。但是,一旦我为生产构建,下面的代码就不想运行了。它既不会阻止块完成也不会失败。 我也尝试过使用选择器和委托,但是那些也没有被调用。

__block __weak ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:URL];
[self performSelectorOnMainThread:@selector(startSpinner) withObject:nil waitUntilDone:NO];

[request setCompletionBlock:^{
    [self performSelectorOnMainThread:@selector(stopSpinner) withObject:nil waitUntilDone:NO];
}];

[request setFailedBlock:^{
    [self performSelectorOnMainThread:@selector(stopSpinner) withObject:nil waitUntilDone:NO];
}];

[request startAsynchronous];

我知道这是对我的问题的一种不好的描述,但有没有人对可能导致这个问题的原因有任何线索?

1 个答案:

答案 0 :(得分:22)

看起来ASIHttpRequest中存在一个错误,在使用发布模式优化运行时导致此崩溃。

对我有用的是关闭以下2个文件的优化: ASIFormDataRequest.m ASIHTTPRequest.m

通过选择目标项目来执行此操作,在“编译”中选择文件 来源“构建阶段”选项卡的“部分”;并添加-O0(国会大厦O零)。

您可以阅读更多相关信息here