It looks like your device has run out of memory, the system has sent many Notifications from memory, and your application has also received one. As a result, your application released the UIViewController , initially launching the UIImagePickerController.
Now when you close the imagePicker button with the Done / Settings button, control returns back to your application. The old UIViewController no longer exists, and you have not implemented the code to recreate it from scratch in such situations. The device appears to be frozen, but only because the user interface has not been redrawn by your application. Otherwise, the application works fine.
You can verify this case by running the didReceiveMemoryWarning method in every UIViewController and logging if it called:
- (void)didReceiveMemoryWarning { NSLog(@"%@", [self description]); [super didReceiveMemoryWarning]; }
One of my favorite mistakes. Easy to miss :)
Jom
source share