Here we take the error information captured by umeng as an example:
From umeng, we may get the following information:
Application initialized ed signal SIGSEGV
(null)(0 CoreFoundation 0x359348a7 __exceptionPreprocess + 1861 libobjc.A.dylib 0x37cdb259 objc_exception_throw + 322 CoreFoundation 0x35934789 +[NSException raise:format:] + 03 CoreFoundation 0x359347ab +[NSException raise:format:] + 344 NxxMovie 0x1153b9 _mh_execute_header + 11314495 libsystem_c.dylib 0x32d407e3 _sigtramp + 386 NxxMovie 0x390fb _mh_execute_header + 2296277 CoreFoundation 0x358931fb -[NSObject performSelector:withObject:] + 428 NxxMovie 0x175a5 _mh_execute_header + 915579 CoreFoundation 0x358931fb -[NSObject performSelector:withObject:] + 4210 Foundation 0x35457747 __NSThreadPerformPerform + 35011 CoreFoundation 0x35908ad3 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 1412 CoreFoundation 0x3590829f __CFRunLoopDoSources0 + 21413 CoreFoundation 0x35907045 __CFRunLoopRun + 65214 CoreFoundation 0x3588a4a5 CFRunLoopRunSpecific + 30015 CoreFoundation 0x3588a36d CFRunLoopRunInMode + 10416 GraphicsServices 0x37526439 GSEventRunModal + 13617 UIKit 0x33396cd5 UIApplicationMain + 108018 NxxMovie 0x31b7 _mh_execute_header + 863119 NxxMovie 0x3150 _mh_execute_header + 8528)dSYM UUID: FF67F6D3-C71C-3A7D-9C4C-C4FFBF8EEEB9CPU Type: armv7Slide Address: 0x00001000Binary Image: NxxMovieBase Address: 0x000f4000
Because this type of crash information is usually difficult to reproduce, there is no reproduction step, so we have to find the original code when releasing this version, and may need to go back to the previous SVN or git version.
Then find the dysm file used for code uploading, which is usually in the. xcarchive file. Right-click the file and use the terminal tool CD
CD/users/Heqin/downloads/xxxmovie2.0.0 _ pai_0605_2104 \ 13-6-5 \ 9.02.xcarchive/dsyms/xxxmovie. App. dsym/contents/resources/dwarf
Note: 1. For a project that successfully generates an archvie, In this archive package, you can view the dsyms folder and a products folder by displaying the package content, continue to display the dsyms folder, and you can see a XXX. app. dsym file, continue to display the package content, you can see the contents/resources/dwarf/xxxx file, this file is the compiled binary file, through which you can decompile, find the source code location corresponding to the binary.
2. In xcode, after archive is successful, all archive files are displayed under archives on the organizer interface. Right-click show in Finder to find the file.
Then execute ATOS-arch armv7-O xxxmovie 0x1153b9. You can see the source code line decompiled from the memory address.
It can effectively help analyze the cause.