para mac for descargar ios xcode

ios - mac - El simulador Xcode 8.2 se bloquea al guardar la captura de pantalla



xcode mac (6)

Después de la actualización XCode 8.2, cada vez que la captura de pantalla del simulador de guardado siempre se bloqueaba. Incluso restablezco el contenido y la configuración sigue fallando.

¿Debo eliminar todo el simulador e instalarlos nuevamente?

Actualización :

  • 8.2.1 tiene el mismo problema.
  • 8.3 solo Sierra compatible.

El siguiente es el informe de bloqueo:

Process: Simulator [48928] Path: /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator Identifier: com.apple.iphonesimulator Version: 10.0 (726.7) Build Info: Indigo-726007000000000~5 Code Type: X86-64 (Native) Parent Process: ??? [1] Responsible: Simulator [48928] User ID: 501 PlugIn Path: /Applications/Xcode.app/Contents/Frameworks/libswiftFoundation.dylib PlugIn Identifier: libswiftFoundation.dylib PlugIn Version: 3.0.2 (800.0.63) Date/Time: 2016-12-13 23:43:25.860 +0800 OS Version: Mac OS X 10.11.6 (15G1108) Report Version: 11 Anonymous UUID: 6E8AEBAE-0AF8-D350-66D6-57EC500D69F5 Sleep/Wake UUID: 6E017B49-1A38-4D3A-AB8F-FD9E200B6286 Time Awake Since Boot: 110000 seconds Time Since Wake: 10000 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: EXC_I386_GPFLT Exception Note: EXC_CORPSE_NOTIFY Application Specific Information: Performing @selector(saveScreenShot:) from sender NSMenuItem 0x7fd05a7329f0 Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libobjc.A.dylib 0x00007fff946adcdc lookUpImpOrForward + 135 1 libobjc.A.dylib 0x00007fff946a8591 objc_msgSend + 209 2 libsystem_blocks.dylib 0x00007fff9b684986 _Block_object_assign + 364 3 com.apple.Foundation 0x00007fff8dc21ca4 __copy_helper_block_ + 49 4 libsystem_blocks.dylib 0x00007fff9b68459d _Block_copy_internal + 325 5 libswiftFoundation.dylib 0x000000010178af95 _TToFC10Foundation12_SwiftNSData19enumerateByteRangesfT5usingFTSVVSC8_NSRangeGSpV10ObjectiveC8ObjCBool__T__T_ + 21 6 com.apple.Foundation 0x00007fff8db02a94 _NSWriteDataToFileWithExtendedAttributes + 742 7 com.apple.iphonesimulator 0x0000000100ffdc1e 0x100ff1000 + 52254 8 com.apple.iphonesimulator 0x0000000100ffdda9 0x100ff1000 + 52649 9 libsystem_trace.dylib 0x00007fff9a5bd07a _os_activity_initiate + 75 10 com.apple.AppKit 0x00007fff909d4dbd -[NSApplication sendAction:to:from:] + 460 11 com.apple.AppKit 0x00007fff909d4b57 -[NSMenuItem _corePerformAction] + 336 12 com.apple.AppKit 0x00007fff909d48b7 -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] + 114 13 libsystem_trace.dylib 0x00007fff9a5bd07a _os_activity_initiate + 75 14 com.apple.AppKit 0x00007fff909d37a5 -[NSMenu performKeyEquivalent:] + 357 15 com.apple.AppKit 0x00007fff909d2949 -[NSApplication _handleKeyEquivalent:] + 920 16 com.apple.AppKit 0x00007fff908f90fe -[NSApplication sendEvent:] + 4274 17 com.apple.iphonesimulator 0x000000010100d151 0x100ff1000 + 115025 18 com.apple.AppKit 0x00007fff9075fdf2 -[NSApplication run] + 796 19 com.apple.AppKit 0x00007fff90729368 NSApplicationMain + 1176 20 libdyld.dylib 0x00007fff99c955ad start + 1 Thread 1:: Dispatch queue: com.apple.libdispatch-manager 0 libsystem_kernel.dylib 0x00007fff97827efa kevent_qos + 10 1 libdispatch.dylib 0x00007fff9612d165 _dispatch_mgr_invoke + 216 2 libdispatch.dylib 0x00007fff9612cdcd _dispatch_mgr_thread + 52 Thread 2:: com.apple.NSEventThread 0 libsystem_kernel.dylib 0x00007fff97820f72 mach_msg_trap + 10 1 libsystem_kernel.dylib 0x00007fff978203b3 mach_msg + 55 2 com.apple.CoreFoundation 0x00007fff97319124 __CFRunLoopServiceMachPort + 212 3 com.apple.CoreFoundation 0x00007fff973185ec __CFRunLoopRun + 1356 4 com.apple.CoreFoundation 0x00007fff97317e38 CFRunLoopRunSpecific + 296 5 com.apple.AppKit 0x00007fff908c1d95 _NSEventThread + 149 6 libsystem_pthread.dylib 0x00007fff928a299d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff928a291a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff928a0351 thread_start + 13 Thread 3: 0 libsystem_kernel.dylib 0x00007fff978275e2 __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff928a2578 _pthread_wqthread + 1283 2 libsystem_pthread.dylib 0x00007fff928a0341 start_wqthread + 13 Thread 4: 0 libsystem_kernel.dylib 0x00007fff978275e2 __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff928a2578 _pthread_wqthread + 1283 2 libsystem_pthread.dylib 0x00007fff928a0341 start_wqthread + 13 Thread 5: 0 libsystem_kernel.dylib 0x00007fff978275e2 __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff928a2578 _pthread_wqthread + 1283 2 libsystem_pthread.dylib 0x00007fff928a0341 start_wqthread + 13 Thread 6: 0 libsystem_kernel.dylib 0x00007fff978275e2 __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff928a2578 _pthread_wqthread + 1283 2 libsystem_pthread.dylib 0x00007fff928a0341 start_wqthread + 13 Thread 7: 0 libsystem_kernel.dylib 0x00007fff978275e2 __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff928a2578 _pthread_wqthread + 1283 2 libsystem_pthread.dylib 0x00007fff928a0341 start_wqthread + 13 Thread 0 crashed with X86 Thread State (64-bit): rax: 0x00007fff6382b2c0 rbx: 0x00007fff6384ce48 rcx: 0x021b77058d48fb89 rdx: 0x00007fff638545f8 rdi: 0x00007fff6384ce48 rsi: 0x00007fff976efa45 rbp: 0x00007fff5ec0dc30 rsp: 0x00007fff5ec0dbe0 r8: 0x0000000000000000 r9: 0x0000000000000001 r10: 0x00007fff93c7d1e0 r11: 0x00007fff6384ce48 r12: 0x00007fff976efa45 r13: 0x0000000000000000 r14: 0x0000000000000001 r15: 0x00007ffffffffff8 rip: 0x00007fff946adcdc rfl: 0x0000000000010206 cr2: 0x00007fff93c7c000


El bloqueo parece ocurrir debido a una falla de segmentación, o más específicamente a una falla de protección general, al llamar al saveScreenShot: selector. Por qué sucede puede depender de varias cosas, por lo que es difícil decir si una reinstalación ayudaría.

En cualquier caso, si la función de captura de pantalla (⌘S) en el simulador causa el bloqueo, casi no hay nada que pueda hacer al respecto. La mejor opción que tiene es probablemente presentar un informe de error a Apple .

Actualizar:

Acabo de actualizar al 8.2 GM, y bajo y he aquí, ⌘S también se bloquea para mí. Aunque KERN_INVALID_ADDRESS lugar de EXC_I386_GPFLT .

Una solución alternativa, por el momento, es copiar la pantalla y pegarla en Vista previa:


Encuentre los pasos a continuación para obtener la captura de pantalla.

1) Vaya a Simuladores -> Editar -> Copiar pantalla o puede usar el atajo ( ctrl + cmd + c ).
2) Abra la Vista previa y vaya a Archivo -> Nuevo desde el portapapeles o puede usar el acceso directo ( cmd + n ).
3) Ahora ve a Archivo -> Guardar o puedes usar el atajo ( cmd + s ).

O también puede consultar la siguiente presentación GIF.


Entonces, una solución más fácil es esta:

  1. Ejecute la aplicación en el simulador (obviamente)

  2. En el simulador, vaya a Edición> Copiar pantalla

  3. Abra la aplicación de vista previa
  4. Regrese al simulador y guarde la captura de pantalla, es decir, Archivo> Guardar captura de pantalla

¡Hecho!

No estoy seguro de por qué esto evita que ocurra el error, pero funcionó para mí. Es más rápido que todos los otros métodos descritos anteriormente.



Sí, desafortunadamente, esto es tropezar con un error en Foundation en OS X 10.11. No tendrá el problema si actualiza a macOS Sierra.

Si no puede actualizar a Sierra en este momento, aún puede tomar capturas de pantalla desde la línea de comandos:

xcrun simctl io booted screenshot <path to output file>

Esto se menciona en las Notas de lanzamiento de Xcode 8.2

El simulador puede bloquearse al guardar una captura de pantalla cuando se ejecuta en OS X El Capitan. (29182710) El bloqueo no se produce en macOS Sierra.


Solución 1

1) Vaya a Simuladores> Editar> Copiar pantalla (⌃⌘C)

2) Abra la aplicación Vista previa> Vaya a Archivo> Nuevo desde el portapapeles (⌘N) y guarde (⌘S) en su ubicación favorita en su máquina

Solución 2: - Uso de la utilidad de línea de comandos xcrun Xcode

Abra la Terminal App y ejecute el siguiente comando para tomar una captura de pantalla

xcrun simctl io booted screenshot

Si desea guardar la captura de pantalla capturada en una ubicación específica

xcrun simctl io booted screenshot <path_to_output_file>