How can I view an NSError?
IphoneObjective CCocoaLoggingIphone Problem Overview
What's the best way to log an NSError
?
- (void)checkThing:(Thing *)thing withError:(NSError *)error {
NSLog(@"Error: %@", error);
}
Gives me a null
message
Iphone Solutions
Solution 1 - Iphone
Looking at the NSError documentation tells me that you'll need to do something like:
NSLog(@"%@",[error localizedDescription]);
This should then give you human readable output
Solution 2 - Iphone
> NSLog(@"Error: %@", error); > > Gives me a null message
Then error
is nil
, not an NSError instance.
Solution 3 - Iphone
Here's a rough method I use to log errors while developing; (Not for Cocoa-touch)
// Execute the fetch request put the results into array
NSError *error = nil;
NSArray *resultArray = [moc executeFetchRequest:request error:&error];
if (resultArray == nil)
{
// Diagnostic error handling
NSAlert *anAlert = [NSAlert alertWithError:error];
[anAlert runModal];
}
NSAlert takes care of displaying the error.