以下是一些代码,我们设置NSHTTPURLResponse
对象:
NSString * data = @"response successful";
NSUInteger length = [data length];
NSDictionary * headersDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:length], @"Content-Length", nil];
NSHTTPURLResponse * response = [[NSHTTPURLResponse alloc] initWithURL:[request URL] statusCode:200 HTTPVersion:@"1.1" headerFields:headersDict];
如果我们将headersDict
作为参数,则以下代码将在最后一行崩溃。
错误:testReportAppOpenToAdMobWithAppstoreId(AdTrackerTests)失败: - [__ NSCFNumber length]:无法识别的选择器发送到实例0xf653f40
我不知道为什么会崩溃。调试显示headersDict
是好的,我怀疑Apple有一个错误。
有什么想法吗?
答案 0 :(得分:4)
NSHTTPURLResponse
可能需要NSString
,而不是NSNumber
。尝试将length
值转换为NSString
。