我有一个叫做FlickBackground的应用程序(我是开发人员)。它在美洲豹上运行良好,但在雪豹上不起作用(下载图像时崩溃)。以下是故障日志(有些已删除,因为它包含个人信息):
Process: Flick Background [8591]
Path: <<hidden>>
Identifier: com.alexy.Flick Background
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000020a38928
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x916caee4 objc_msgSend + 36
1 com.apple.CFNetwork 0x969ac054 URLDownload::willSendRequest(_CFURLRequest const*, _CFURLResponse*) + 56
2 com.apple.CFNetwork 0x9694a0a7 URLConnectionClient::getRequestForTransmission(_CFURLResponse*, _CFURLRequest const*, __CFError**) + 413
3 com.apple.CFNetwork 0x96949b2f URLConnectionClient::_clientWillSendRequest(_CFURLRequest const*, _CFURLResponse*, URLConnectionClient::ClientConnectionEventQueue*) + 223
4 com.apple.CFNetwork 0x969ce456 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 148
5 com.apple.CFNetwork 0x9694994e URLConnectionClient::processEvents() + 94
6 com.apple.CFNetwork 0x969497ef MultiplexerSource::perform() + 183
7 com.apple.CoreFoundation 0x910d90fb __CFRunLoopDoSources0 + 1563
8 com.apple.CoreFoundation 0x910d6bbf __CFRunLoopRun + 1071
9 com.apple.CoreFoundation 0x910d6094 CFRunLoopRunSpecific + 452
10 com.apple.CoreFoundation 0x910d5ec1 CFRunLoopRunInMode + 97
11 com.apple.HIToolbox 0x94426f9c RunCurrentEventLoopInMode + 392
12 com.apple.HIToolbox 0x94426c8d ReceiveNextEventCommon + 158
13 com.apple.HIToolbox 0x94426bd6 BlockUntilNextEventMatchingListInMode + 81
14 com.apple.AppKit 0x91bbba89 _DPSNextEvent + 847
15 com.apple.AppKit 0x91bbb2ca -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156
16 com.apple.AppKit 0x91b7d55b -[NSApplication run] + 821
17 com.apple.AppKit 0x91b755ed NSApplicationMain + 574
18 com.alexy.Flick Background 0x00001cfa start + 54
我看到的是当图像下载时,我的应用程序崩溃了。我的第一个结论是,我用来下载图像的东西在雪豹身上贬值了。
我没有雪豹机器,所以我无法直接定位错误。这是导致问题的部分代码:
NSError *error = nil;
NSData *initalizedUrl = [NSData dataWithContentsOfURL: [NSURL URLWithString:@"URLHERE"] options:0 error:&error];
NSString *rawContents = [[NSString alloc] initWithData:initalizedUrl encoding:NSASCIIStringEncoding];
我几乎百分之百相信这个问题会在雪豹身上得到解决。