Bloqueo de iPhone con "Sin retroceso"
Mi aplicación para iPhone fue rechazada recientemente de la App Store "porque se bloquea al iniciarse". Sin embargo, no puedo reproducir este bloqueo. La aplicación funciona perfectamente tanto en el simulador como en un dispositivo con el mismo hardware y software en el que Apple lo probó (iPhone 3.1 con iOS 4). Los registros de fallos que me enviaron dicen "No hay retroceso disponible", por lo que no tengo dónde buscar mi código. Aquí hay un ejemplo:
Incident Identifier: [...]
CrashReporter Key: [...]
Hardware Model: iPhone3,1
Process: [MyApp] [1172]
Path: /var/mobile/Applications/[...]-3F1B-4504-A572-[...]/[MyApp].app/[MyApp]
Identifier: [MyApp]
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2010-07-08 [...]
OS Version: iPhone OS 4.0 (8A293)
Report Version: 104
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0xfe42c648
Highlighted Thread: 0
Backtrace not available
Unknown thread crashed with ARM Thread State:
r0: 0x00002388 r1: 0x00000000 r2: 0x3e2b47c8 r3: 0x00000108
r4: 0x2fe00000 r5: 0x00000000 r6: 0x00000000 r7: 0x00000000
r8: 0x2ffffb48 r9: 0x2fffecfc r10: 0x00000000 r11: 0x00000000
ip: 0x00000010 sp: 0x2ffffb4c lr: 0x2fe08907 pc: 0xfe42c648
cpsr: 0x40000010
Binary Images:
0x1000 - 0x78fff +[MyApp] armv7 <23af3d265c3086eaceb51cc649eb794f> /var/mobile/Applications/[...]-3F1B-4504-A572-[...]/[MyApp].app/[MyApp]
0x2fe00000 - 0x2fe26fff dyld armv7 <697ae459733a7f0b6c439b21ba62b110> /usr/lib/dyld
[many more libraries...]
¿Cómo puedo comenzar a depurar esto? ¿Es posible que este sea un problema de compilación en lugar de un error de codificación? ¿Y puedo extraer información útil del "Estado de subproceso ARM" o de las partes de "Imágenes binarias" del informe de bloqueo?
¡Gracias!
* actualización: * He instalado la aplicación por primera vez en otro iPhone con iOS 4 y todavía no puedo reproducir el bloqueo. Estoy empezando a pensar que este es un problema con los parámetros de tiempo de compilación, como las bibliotecas o las versiones específicas. Según el informe de bloqueo, ¿es probable que se haya ejecutado alguno de los códigos de mi aplicación?