Xcode 8.2 simulator crash when save screen shot

IosXcode

Ios Problem Overview


After update XCode 8.2, every time save simulator screen shot always made it crash. Even I reset content and settings still crash.

Should I remove all simulator and install them again?

Update:

  • 8.2.1 has same problem.
  • 8.3 only Sierra supported.

The following is the crash report:

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

Ios Solutions


Solution 1 - Ios

The crash seems to occur due to a segmentation fault, or more specifically a general protection fault, while calling the saveScreenShot: selector. Why it happens can depend on several things, so it's hard to say whether a reinstall would help.

In any case, if the screenshot (⌘S) function in simulator causes the crash, there's hardly anything you can do about it. The best option you have is probably to file a bug report to Apple.

Update:

I just updated to the 8.2 GM, and low and behold, ⌘S crashes for me as well. Although I'm getting KERN_INVALID_ADDRESS instead of EXC_I386_GPFLT.

One workaround, for the time being, is copying the screen and pasting into Preview:

screenshot

Solution 2 - Ios

Yeah, unfortunately, this is tripping over a bug in Foundation on OS X 10.11. You won't have the problem if you upgrade to macOS Sierra.

If you cannot upgrade to Sierra right now, you can still take screenshots from the commandline:

xcrun simctl io booted screenshot <path to output file>

This is mentioned in the Xcode 8.2 Release Notes

> Simulator can crash when saving a screenshot when running on OS X El Capitan. (29182710) > The crash does not occur on macOS Sierra.

Solution 3 - Ios

Please find the below steps for getting the screenshot.

  1. Go to Simulators -> Edit -> Copy Screen or you can use the shortcut (ctrl + cmd + c).
  2. Open the Preview and go to File -> New from Clipboard or you can use the shortcut (cmd + n).
  3. Now go to File -> Save or you can use the shortcut (cmd + s).

Or you can also refer the below GIF presentation.

GIF

Solution 4 - Ios

So an easier workaround is this:

  1. Run app in simulator (obviously)

  2. In simulator go to Edit>Copy Screen

  3. Open Preview app

  4. Go back to simulator and save screenshot i.e. File>Save Screenshot

Done!

Not sure why this prevents the bug from occurring but it worked for me. It's faster than all the other methods described above.

Solution 5 - Ios

Solution 1

  1. Go to Simulators > Edit > Copy Screen (⌃⌘C)

enter image description here

  1. Open Preview App > Go to File > New from Clipboard (⌘N) and Save (⌘S) to your favorite location on your machine

enter image description here

Solution 2:- Using the xcrun Xcode command-line utility

Open Terminal App and run the following command to take screenshot

xcrun simctl io booted screenshot

If you wish to save the captured screenshot to specific location

xcrun simctl io booted screenshot <path_to_output_file>

Solution 6 - Ios

Another convenient way -> Shift+Command+4 - tap the space bar, tap on the window to get snapshot of the Simulator's window.

https://support.apple.com/en-us/HT201361

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionTericky ShihView Question on Stackoverflow
Solution 1 - IosxoudiniView Answer on Stackoverflow
Solution 2 - IosJeremy Huddleston SequoiaView Answer on Stackoverflow
Solution 3 - IosRamkrishna SharmaView Answer on Stackoverflow
Solution 4 - IosSalil JuniorView Answer on Stackoverflow
Solution 5 - IosMilanPanchalView Answer on Stackoverflow
Solution 6 - IosbencView Answer on Stackoverflow