我无法摆脱 RestKit 中的 EXC_BAD_ACCESS 错误。我怀疑这是因为我有一个 ARC 项目,并且可能多次发布请求或响应变量,但我已经花了几个小时在这上面,但不确定。
我的问题听起来与这篇文章相似,但我不确定在我的代码中的哪个位置进行类似的更改。
我的实现文件有一种将新对象发布到服务器的简单方法。所有映射逻辑都在下面 NSObject 的实现文件中:
-(void) createMeeting
{
NSString* baseUrl = @"https://myapp.appspot.com/api/meeting/?format=json&username=testuser@test.com&api_key=f8s9df8as8df9s8d97";
RKObjectManager* rkoManager = [RKObjectManager objectManagerWithBaseURLString:baseUrl]; [NewMeetingRK initMap:rkoManager];
NewMeetingRK *newmtg = [NewMeetingRK alloc];
newmtg.leader = self.leaderEmail.text;
newmtg.startdate = [sqliteformatter stringFromDate:bdate];
newmtg.enddate = [sqliteformatter stringFromDate:edate];
[[RKObjectManager sharedManager] postObject:newmtg delegate:self];
它成功地开始 requestDidStartLoad:(RKRequest *)request 但是它在 RKResponse.m 下面倒数第二行崩溃(如果 ([[_request delegate] respondsToSelector:... 出现 EXC_BAD_ACCESS 错误。
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSHTTPURLResponse *)response {
RKResponseIgnoreDelegateIfCancelled();
RKLogDebug(@"NSHTTPURLResponse Status Code: %ld", (long) [response statusCode]);
RKLogDebug(@"Headers: %@", [response allHeaderFields]);
_httpURLResponse = [response retain];
[_request invalidateTimeoutTimer];
if ([[_request delegate] respondsToSelector:@selector(request:didReceiveResponse:)]) {
[[_request delegate] request:_request didReceiveResponse:self];
}
}
有什么想法可以帮助我吗?非常感谢。