Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting info from .ips crash report file

I’ve tested my app on iPhone 5 and 4s. And then I sent my app to tester, he has 5s iPhone. Everything was ok. After sometime, when I added some features to app, I sent him another version, but now he says that it crashes on launch. On my devices everything is ok. I asked him to send me crash reports. Here is .ips file:

{"bundleID”:"name.my-app","app_name”:”my-app","bug_type":"109","name”:”my-app","os_version":"iPhone OS 7.1 (11D167)","version":"1.0 (1.0)"} Incident Identifier: 3916. . .194 CrashReporter Key:   58fd. . .7399 Hardware Model:      iPhone6,2 Process:             my-app [277] Path:                /var/mobile/Applications/0AB0. . .B5B/my-app.app/my-app Identifier:          name.my-app Version:             1.0 (1.0) Code Type:           ARM-64 (Native) Parent Process:      launchd [1]  Date/Time:           2014-03-27 02:10:39.959 +0400 OS Version:          iOS 7.1 (11D167) Report Version:      104  Exception Type:  EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Triggered by Thread:  24  Last Exception Backtrace: (0x1893e2950 0x1958e81fc 0x1893e2890 0x1000f09a0 0x195ec0014 0x195ebffd4 0x195ec64a8 0x195ec24c0 0x195ec70f4 0x195ec74fc 0x1960556bc 0x19605554c)  Thread 0: 0   libsystem_kernel.dylib          0x0000000195fbdca0 0x195fbc000 + 7328 1   CoreFoundation                  0x00000001893a2570 0x1892d8000 + 828784 2   CoreFoundation                  0x00000001893a0764 0x1892d8000 + 821092 3   CoreFoundation                  0x00000001892e16cc 0x1892d8000 + 38604 4   GraphicsServices                0x000000018efc5c08 0x18efb8000 + 56328 5   UIKit                           0x000000018c412fd8 0x18c398000 + 503768 6   my-app                      0x00000001000f1ae8 0x1000dc000 + 88808 7   libdyld.dylib                   0x0000000195edba9c 0x195ed8000 + 15004  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   Thread 24 Crashed: 0   libsystem_kernel.dylib          0x0000000195fd658c 0x195fbc000 + 107916 1   libsystem_c.dylib               0x0000000195f6a804 0x195f08000 + 403460 2   libc++abi.dylib                 0x0000000195190990 0x195190000 + 2448 3   libc++abi.dylib                 0x00000001951adc28 0x195190000 + 121896 4   libobjc.A.dylib                 0x00000001958e84d0 0x1958e0000 + 34000 5   libc++abi.dylib                 0x00000001951ab164 0x195190000 + 110948 6   libc++abi.dylib                 0x00000001951aaa7c 0x195190000 + 109180 7   libobjc.A.dylib                 0x00000001958e8314 0x1958e0000 + 33556 8   CoreFoundation                  0x00000001893e288c 0x1892d8000 + 1091724 9   my-app                      0x00000001000f099c 0x1000dc000 + 84380 10  libdispatch.dylib               0x0000000195ec0010 0x195ebc000 + 16400 11  libdispatch.dylib               0x0000000195ebffd0 0x195ebc000 + 16336 12  libdispatch.dylib               0x0000000195ec64a4 0x195ebc000 + 42148 13  libdispatch.dylib               0x0000000195ec24bc 0x195ebc000 + 25788 14  libdispatch.dylib               0x0000000195ec70f0 0x195ebc000 + 45296 15  libdispatch.dylib               0x0000000195ec74f8 0x195ebc000 + 46328 16  libsystem_pthread.dylib         0x00000001960556b8 0x196054000 + 5816 17  libsystem_pthread.dylib         0x0000000196055548 0x196054000 + 5448  Thread 25: 0   libsystem_kernel.dylib          0x0000000195fd6e74 0x195fbc000 + 110196 1   libsystem_pthread.dylib         0x0000000196055548 0x196054000 + 5448  Thread 26: 0   libsystem_kernel.dylib          0x0000000195fd6e74 0x195fbc000 + 110196 1   libsystem_pthread.dylib         0x0000000196055548 0x196054000 + 5448  Thread 24 crashed with ARM Thread State (64-bit):     x0: 0x0000000000000000   x1: 0x0000000000000000   x2: 0x0000000000000000   x3: 0x00000001035de7b8     x4: 0x0000000000002060   x5: 0x00000001035de870   x6: 0x000000000000006e   x7: 0x0000000000000640     x8: 0x000000000c000000   x9: 0x0000000004000000  x10: 0x0000000098d956f7  x11: 0x0000000000000300    x12: 0x0000000000000000  x13: 0x0000000000000000  x14: 0x0000000000000000  x15: 0x0000000195f83dcb    x16: 0x0000000000000148  x17: 0x00c8d95a0138084d  x18: 0x0000000000000000  x19: 0x0000000000000006    x20: 0x00000001035e0000  x21: 0x000000017013b5d8  x22: 0x000000017013b600  x23: 0x000000015d610870    x24: 0x00000001963068e8  x25: 0x0000000100100000  x26: 0x0000000198d87c40  x27: 0x000000017026c2c0    x28: 0x000000000000000a  fp: 0x00000001035de7f0   lr: 0x000000019605916c     sp: 0x00000001035de7d0   pc: 0x0000000195fd658c cpsr: 0x00000000  Binary Images: 0x1000dc000 - 0x1000f7fff my-app arm64  <d6f1f532dfbc36c497acefc4aa2c7f2f> /var/mobile/Applications/0AB088E7-6425-4287-9C4B-1EEF37E7DB5B/my-app.app/my-app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  0x19606c000 - 0x19608ffff libxpc.dylib arm64  <7077afbad955309d8cb9965960c781f3> /usr/lib/system/libxpc.dylib 

I was reading a lot of similar questions here, and they says I need to symbolicate that .ips through terminal. But it doesn’t work. atos command returns that it is can’t read my-app.app, xcrun atos returns same memory address that I’m specifying.

xcrun atos -arch arm64 -o 'my-app.app' 0x196054000 + 5448 0x196054000 + 5448 

I’m not sure, am I need to specify that + number, but it doesn’t work without it too.

Thanks in advance, I would appreciate any help.

UPDATE:

I’ve figured it out. Something wrong with NSFileManager, it is acting differently on 64bit and 32 bit

[fileManager fileExistsAtPath:pathToCacheDir isDirectory:&isDirectory]; 

isDirectory returns NO, although pathToCacheDir is valid directory, that’s why I got exception. But question is still valid, how can I got some more understandable reports from testers?

like image 269
Alfred Zien Avatar asked Mar 28 '14 20:03

Alfred Zien


People also ask

How do I read an Apple crash report?

You can use the Mac Console app to view any crash logs from your Mac or from the Simulator. And on the device under Settings, Privacy, Analytics, Analytics Data you can see all of the logs that are saved to disk and your users can share a log directly from this screen.

How do I find the device log on my iPhone?

Connect your iOS to your computer with a USB or Lightning cable. Go to Window > Devices and select your device from the list. Click the "up" triangle at the bottom left of the right hand panel. All logs from all apps on the device will be displayed here.

How do you read a Minecraft crash report?

Understanding a Crash ReportHead to your Game Panel and to the left, press FTP File Access and log in. Once in FTP File Access, you will see a folder named `crash-reports`. Go ahead and click that.


1 Answers

I just got a whole bunch of .ips files from a Windows user and was wondering what to do with them, too. Renaming them to .crash made Xcode happy to import them (go to the Organizer, to Library Device Logs, and Import) and symbolicate them.

edit: When I originally wrote this answer, it was with Xcode 6 in mind. Newer versions of Xcode (7+ I think) have moved things around. According to Apple:

Xcode will automatically attempt to symbolicate all crash reports that it encounters. All you need to do for symbolication is to add the crash report to the Xcode Organizer.

  1. Connect an iOS device to your Mac
  2. Choose "Devices" from the "Window" menu
  3. Under the "DEVICES" section in the left column, choose a device
  4. Click the "View Device Logs" button under the "Device Information" section on the right hand panel
  5. Drag your crash report onto the left column of the presented panel
  6. Xcode will automatically symbolicate the crash report and display the results
like image 179
Isaac Avatar answered Sep 20 '22 07:09

Isaac