Tips & Tricks: iOS - Stackshot

For logging and debugging there are a number of options Apple provides developers to obtain detailed strings of computer code to digest. But for the rest of us, we can use something called Stackshot

This is used for those situations when an app is non-responsive and you want to do a little digging yourself before committing 3 hours of your life to the Genius Bar.

 

Stackshot Instructions

In your iOS Device:

1. Reproduce the issue
2. Press the Home button and either volume button on the device at the same time. 
Note: Press the button combo several times to capture a series of stackshots. You may not feel it 'vibrate'.
3. Sync the iOS device to iTunes
4. Attach the files that look like this: “stacks-yyyy-mm-dd-xxxxxx.ips“ at the log locations below to the bug report 

 

On your OS X Laptop:

~/Library/Logs/CrashReporter/MobileDevice/<iPhone name>/stacks-yyyy-mm-dd-xxxxxx.log

Note: “~/” your user folder or /Users/[your_user_name_here]/Library/Logs/… not the root level /Library/Logs/… path

Attach the stackshot files that correspond with the dates of your button presses to the bug.

When I tested collecting Stackshots, there was not vibration or sound, no feedback to tell me "thanks, we got it" - but, you will still get what your looking for.

So why do you need to sync to iTunes? the alternative is Xcode Organizer. This will also will also let you access device logs and from there you can also export individual reports.

 

Why is this useful?

Stackshots give you the ability to capture the moment your device fails, this may also provide the technician, repair-person or Genius, the opportunity to gain a little more insight into your issue.

So remember:

Home Button + Power button = screenshot.
Home button + Volume up or down = stackshot