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]; 

我知道这是对我的问题的一个不好的描述,但是有没有人有什么可能导致这个问题的丝毫线索?

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

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

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

你可以在这里阅读更多相关信息

Interesting Posts