CrashSight provides all-platform (mobile/PC/host) developers with full-link closed-loop professional services such as crash exception capture, reporting, analysis, and avoidance solutions. Help developers quickly locate and solve abnormal problems, reduce product crash rate, and improve user experience.
Domestic: https://crashsight.qq.com
Overseas/Overseas: https://crashsight.wetest.net
Today, I have sorted out the common problems encountered in the process of accessing and reporting using CrashSight:
1 Frequently asked questions about iOS access and reporting
1.1 The crash is not reported after accessing the SDK ● Check whether the AppId is set correctly;
● Whether the initialization of the SDK is completed before the crash;
● Whether the network is available;
● During the test, if the previous report is suddenly not reported, it may trigger the traffic protection mechanism of CrashSight. Please uninstall the App and then test (it will not affect the Crash accuracy rate of real users)
● Whether other third-party components with the function of capturing crash are used, including but not limited to firebase/fackbook/google mobile ads. In some cases, there may be compatibility issues. If the above components are used, please contact the administrator for assistance.
● Whether the crash was triggered by the strong killing mechanism of iOS. The system is forced to kill, there is no processing time in the APP, and it cannot be reported. The main trigger conditions are long-term freezes (about 5s or more), or high CPU/GPU/memory usage for a certain period of time.
1.2 Why do I need the java environment to upload the symbol table ● Our symbol table extraction tool depends on the java environment, and the symbol table tool only extracts the necessary information.
1.3 If the symbol table upload fails, the uuid does not match ● The uuid of the symbol table will change every time it is built, so the symbol table file generated by the current build is needed to restore the crash uploaded after the current build.
1.4 The suffix names of dependent libraries are different, such as: libc++.dylib and libc++.tbd
● Add the dependent library libc++.tbd when compiling with iOS SDK 9.0 and above, and add libc++.dylib below 9.0
1.5 What are the functions of different SDKs ● iOS SDK: used to collect iOS App crashes, freezes, statistics of app operation data, etc. ● Cocos Plugin: used to collect crashes, script errors, etc. in apps based on Cocos engine ● Unity Plugin: used to collect crashes, script errors, etc. in apps based on Unity engine Unreal Plugin: used to collect crashes, script errors, etc. in apps based on Unreal engine
2 Android access and reporting common problems
2.1 How to view the Logcat log of CrashSight during the development process ● Refer to the parameter configuration. During initialization, set the debug mode to True.
2.2 Why do the same users report hundreds of crashes a day? Will it consume user traffic?
● There is a traffic limit for reporting a single user. Before the traffic limit is reached, CrashSight will report normally.
2.3 Does each version need to configure the symbol table ● Yes.
2.4 Will the exception reporting be affected if the restore symbol table is not configured? What will be the impact?
● Restoring the configuration of the symbol table will not affect the reporting.
● If there is no configuration, the web page will only display the original crash stack, which is not conducive to crash troubleshooting.
2.5 The crash is not reported after accessing the SDK ● Check whether the AppId is set correctly;
● Whether the initialization of the SDK is completed before the crash;
● Whether the network is available;
● During the test, if the previous report is suddenly not reported, it may trigger the traffic protection mechanism of crashsight. Please uninstall the app and test again (it will not affect the crash accuracy rate of real users)
● Whether other third-party components with the function of capturing crash are used, including but not limited to firebase/fackbook/google mobile ads. In some cases, there may be compatibility issues. If the above components are used, please contact the administrator for assistance.
● Whether the system is forcibly killed due to insufficient memory (this situation often occurs on low-end computers, and it is often extremely stuck before it occurs).
3 Frequently asked questions about Windows SDK access and reporting
Unable to report a crash: please check the following situations in turn⦁ Check if the dll is loaded correctly;
⦁ Check if the setTQMConfig function has been executed;
⦁ Whether the crash produced is within the scope of CrashSight support (specially note that the throw/raise type crash does not belong to the scope of support);
⦁ After initialization, whether there is a TQM Center.exe process running;
⦁ Check whether the TQM64/GameBabyConfig.dat file is consistent with the GameBabyConfig.dat file at the same level as the dll.
⦁ After the crash, whether to generate a dmp file under TQM64/dump, if not, please check 1-3
⦁ After the crash occurs, the dmp is generated, but no report is seen on the "Crash Analysis" page, please check 4-5
⦁ If there are no problems in 1-7, but there is still no crash report, please add the following configuration to the 2 configuration files. Replace appid with project appid (be sure to delete this configuration in the release version, otherwise it will lead to information leakage). After the replacement, the operation crashed, and the log files in the two GBLog folders were sent to CrashSight for development, and the problem was manually assisted in troubleshooting.
<LogOutput>appid</LogOutput>4 Unity SDK FAQ.
4.1 After initializing the SDK, why can't I catch and report C# exceptions?
a. Check if there is any other logic to register Application.RegisterLogCallback(LogCallback), because the system default LogCallback is unicast implementation, so only one callback instance can be maintained, you can call CrashSightAgent.RegisterLogCallback(CrashSightAgent.LogCallbackDelegate) method to replace the log callback registration;
b. Check whether the SDK components of the corresponding platform have been integrated into the project
d. Check if the crash for the test is caught inside the code5 Restoration FAQ
5.1 The Android stack is not restored⦁ Please confirm that the symbol table has been uploaded, and you can see that the symbol table file has been uploaded on the Crash Analysis->Single Crash->Symbol Table page. (Java symbol table file can be ignored)
⦁ Please confirm that the uploaded symbol table is not the original so file, but the processed symbol table. Please refer to [Symbol Table Upload Tool and Instructions for Use] ( https://wetest.qq.com/help/documentation/10679.html ) or [Symbol Table Blue Shield Plug-in Automatic Upload] ( https://wetest. qq.com/help/documentation/10691.html ).
⦁ Please confirm that the so file uploaded in the previous step is a signed file. The libunity.so of the special Unity engine is usually unsymbolized, and needs to be produced by using the libunity.sym.so file in the engine directory or during the compilation process.
5.2 The iOS stack is not restored⦁ Similar to Android, please confirm that the symbol table has been uploaded, and you can see that the symbol table file has been uploaded on the Crash Analysis->Single Crash->Symbol Table page.
⦁ Modules not used by the project crash, such as Foundation modules, etc., which are all system modules. The symbol table of system modules is managed uniformly by CrashSight. There are only some very old versions. Versions with a very short online time may not be restored. For other version restoration problems, please contact the administrator.
5.3 Re-restore After making sure that the symbol table has been uploaded, you can re-restore the stack by clicking "Retry to restore the stack".
5.4 Unreal callback function return TCHAR_TO_UTF8(*message)
TCHAR_TO_UTF8 macro definition can only be due to function parameters, less than 128 bytes are allocated on the stack, and greater than 128 bytes are allocated on the heap; if it is greater than 128 bytes, after the semicolon ends, the heap is immediately released, resulting in a wild pointer; Correct usage:
Write at the end:
CrashSight provides developers with exception capture, reporting and analysis services. Help developers quickly locate and solve abnormal problems, reduce product crash rate, and improve user experience. Support all mobile/PC/host platforms, including:
platform:
⦁ Mobile: iOS, Android
⦁ PC side: Windows
⦁ Console: Nintendo Switch, PS4, XBOX
language:
⦁ C/C++/C#, Java, Object-C/Swift
engine:
⦁ Unity, UE4, Cocos
Go to the official website now:
Domestic: https://crashsight.qq.com
Overseas/Overseas: https://crashsight.wetest.net
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。