我在使用 UIImagePickerController 的应用程序中使用突发模式,有一次当我完成我的应用程序并拍摄更多数量的图像时,应用程序崩溃并显示错误:
应用程序退出由于内存压力而意外终止
-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo: (NSDictionary *)info
{
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
[arrayImages addObject:image];
if (picTaken) {
[imagePicker takePicture];
}
else
{
[imagePicker dismissViewControllerAnimated:YES completion:^{
[self imagePlace];//Where i get All Images in a View presented same as in IOS camera Video//
[[NSNotificationCenter defaultCenter] removeObserver:self];
[[NSNotificationCenter defaultCenter] removeObserver:self name:AVCaptureSessionDidStartRunningNotification object:nil];
}];
}
最佳答案
这一切都与内存有关,就好像您的 iOS 应用程序
正在运行并且当 iOS 设备
上检测到内存不足
时,虚拟内存系统发出通知,要求应用程序释放内存。这些通知被发送到所有正在运行的应用程序和进程,以减少使用的内存总量。
如果内存使用率仍然很高,系统可能会终止后台进程以缓解内存压力。如果可以释放足够的内存,您的应用程序将继续运行并且不会生成崩溃报告。否则,您的应用程序将被 iOS
终止,并生成低内存报告。有关更多信息,您可以查看 this .
所以你可以使用Instruments
工具来解决这个问题,检测内存使用和泄漏,并遵循内存管理技术。
关于iphone - 应用程序在完成 Did Finish Picking ImagePicker Controller 时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19219812/