CALayer renderInContext: causando un crash desconocido

El bloque de código completo consiste en lo siguiente:

CGSize layerSize = [webview sizeThatFits:CGSizeZero]; if ([UIScreen instancesRespondToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2.0f) { UIGraphicsBeginImageContextWithOptions(layerSize, NO, 2.0f); } else { UIGraphicsBeginImageContext(layerSize); } [webview.layer renderInContext:UIGraphicsGetCurrentContext()]; screenshot = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); 

pero después de las testings, esta línea es la que causa el problema:

  [webview.layer renderInContext:UIGraphicsGetCurrentContext()]; 

La aplicación falla sin razón alguna en la console, y al usar @try @catch @finally no aparece nada. Importé Quartzcore en AppDelegate.h, si eso tiene algo que ver con eso. La aplicación funciona bien en el simulador, pero falla cuando se ejecuta en un dispositivo real.

@Greg: parece un problema de desbordamiento de memory en el dispositivo, ya que el dispositivo está limitado por la memory mientras el simulador se ejecuta con una configuration de memory diferente, me encuentro con lo mismo, esto puede suceder en páginas web largas, ¿alguna idea de cómo resolverlo?

¿Alguien que es máximo ancho y alto [CALayer renderInContext] puede manejar en un dispositivo real (iphone retina o non-retina) antes de que se cuelgue?

tratar

 [self.view.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 

Eliminar la línea self.view.layer.cornerRadius. Crash obtendrá reparación