1
我期待在崩潰日誌中是在測試應用程序的設備,在插入的對象,我看到下面的行...的iOS NSArray的索引
objc_exception_throw + 33
[__NSArrayM insertObject:atIndex :] +187
發生這種情況的代碼如下所示。 appData是一個NSDictionary,我期待imageUrl成爲一個到互聯網上的PNG文件的URL。
for (int i = 1; i <= [self getNumberOfScreenshots]; i++) {
pathToUrl = @"screenshot_";
pathToUrl = [pathToUrl stringByAppendingString:[[NSNumber numberWithInt:i] stringValue]];
imageUrl = [self.appData valueForKey:pathToUrl];
imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:imageUrl]];
[NSMutableArrayObj addObject:imageData];
}
什麼會導致這種類型的錯誤?該錯誤發生很少..可能是imageData有時爲零,因爲它無法從url下載png圖像,所以當我嘗試將它添加到NSMutableArrayObj時引發異常?
謝謝!
是的,在容器中不允許有'nil';如果價值可能是'零',這將是一個問題。你不會說哪個例外被提出,但是;跟蹤意味着拋出異常。它可能更準確地描述錯誤。 – 2012-08-02 08:07:08
是的,添加更多的錯誤檢查和拒絕圖像'imageData == nil'。 – trojanfoe 2012-08-02 08:10:15
感謝您的幫助!我會添加錯誤檢查,我猜這是零問題。我無法確切地看到從跟蹤的其餘部分拋出什麼異常...最上面的一行是__exceptionPreprocess + 163 – user1467188 2012-08-02 08:13:04