Triggering the watchdog mechanism for some reason
View device crash information through Xcode
In addition to the above system analysis tools for analysis, if we directly use the phone connection to crash or crash and connect to the phone, choose window> devices> your mobile phone> view device logs to view the crash information.
View device logs
As long as the application on the mobile phone is installed and packaged on this computer, such a crash information system has become symbolic for us, we only need to wait for a while (do not trust the progress here to refresh, (Not accurate). If the symbols are not completed, select the file and right-click Re-Sysbomlicate.
For packaging on other computers, we can export the Crash file and parse it by using the command line.
Daily Updates: http://weibo.com/hanjunqiang Sina Weibo
Use third-party crash analysis tools
Currently, many third-party tools can perform crash statistics and analysis. umeng crash statistics are mostly used. umeng crash statistics are integrated into umeng sdks, the specific usage is the best way to go directly to the official documentation. The following lists the URL of the umeng crash statistics documentation.
Umeng crash statistics official documentation
Here, I do not recommend umeng as a third party, but a better third-party-bugHD. The biggest difference between this third-party and umeng is that it can directly analyze the crash information in combination with dSYM and display it on the web page. It can also count the number of crashes, crashed devices, and system versions.
The following are some crashes in my company's bugHD statistics.
BugHD
The bugHD server has helped us use dSYM to complete the symbolic crash. We can click a crash to view the detailed crash stack, as well as the crash device distribution and system distribution.
Detailed distribution
Crash statistics tool provided by Apple
Apple integrated crash statistics for us in Xcode, which can be seen in Window-> Organizer-> Crashes
Crashes
Crash statistics tools provided by Apple are not recommended. If you want to use this function, you need to set it on the iPhone.
Settings-> privacy-> diagnosis and usage data (iOS8 is set in general)
Select Automatic sending and share it with developers.
Malicious third-party tool coverage
The crash collection statistics function should be called only once. If a third party is used, it is better to use only one third party. In this way, we obtain the crash statistics only.
Third-party statistical tools are not used as much as possible. Using multiple crashes to collect third-party data may cause malicious coverage of NSSetUncaughtExceptionHandler () function pointers, and some third parties may not receive crash information.
Currently, many third-party crash collection tools will maliciously overwrite NSSetUncaughtExceptionHandler () function pointers to ensure that they can collect crash information as much as possible. Because this function transmits the function address as a parameter, it will be overwritten as long as repeated calls are made, so the stability of the crash collection cannot be guaranteed.
When parsing the crash information, we can see that the crash stack is only main. m file crash, and can be determined not because of main. the crash caused by a bug in the m file can basically be determined that the NSSetUncaughtExceptionHandler () function pointer is maliciously overwritten.
Crash stacks maliciously covered