Unity 퍼포먼스 리포팅은 예외 데이터를 캡처 및 집계하므로 런타임 도중 일어나는 일을 이해하고 프로젝트를 더 빨리 최적화할 수 있도록 도와줍니다. 예외는 게임이 완성된 빌드로 실행 중인 동안, 그리고 에디터에서 플레이 모드에 있는 동안 서비스 대시보드에 업데이트됩니다.
iOS crash reporting is available to Unity Plus and Pro users as part of the Unity Performance Reporting service. Turn on Performance Reporting to track crashes on iOS, including crashes in native user code, engine code, and plug-ins.
퍼포먼스 리포팅 설정에 대한 설명은 Unity 문서고를 참조하십시오.
IL2CPP를 사용하고 iOS 플레이어 설정 Script Call Optimization 설정이 Fast but no exceptions 로 설정된 경우, iOS 크래시 보고에서 확인되지 않은 관리 예외로 인한 크래시를 캡처합니다.
See documentation on iPhone Optimization for more information on the Script Call Optimization settings.
보고서에는 크래시된 스레드의 네이티브 스택 추적을 표시합니다. 크래시 원인이 확인되지 않은 관리 예외인 경우, 보고서에는 예외 발생 위치의 관리 스택 추적이 네이티브 스택 추적과 함께 표시됩니다.
iOS 크래시 보고는 애플리케이션 메모리 부족으로 운영체제에 의해 종료되어 발생하는 크래시를 캡처할 수 없습니다.
Unity 클라우드 개발자 대시보드에서 크래시를 확인할 수 있습니다. 대시보드에서 게임을 선택하고 Enable Game Performance 를 선택해야 합니다(그림 A 참조).
다음은 관리 예외로 인해 발생한 크래시에 대한 보고서의 형태를 보여주는 보고서 예입니다.
Managed Stack Trace:
at CrashTests.CrashNextUpdate () [0x00000] in <filename unknown>:0
at CrashTests.Update () [0x00000] in <filename unknown>:0
Native StackTrace:
Thread 0 (crashed)
0 crashreporttest CrashedCheckBelowForHintsWhy() (CrashReporter.mm:106)
1 crashreporttest UnhandledExceptionEventHandler_Invoke_m689053609 (mscorlib_System_Delegate3660574010.h:79)
2 crashreporttest RuntimeInvoker_Void_t2779279689_Il2CppObject_Il2CppObject(MethodInfo const*, void*, void**) (Il2CppInvokerTable.cpp:405)
3 crashreporttest il2cpp::vm::Runtime::CallUnhandledExceptionDelegate(Il2CppDomain*, Il2CppDelegate*, Il2CppObject*) (Runtime.cpp:350)
4 crashreporttest il2cpp::vm::Runtime::UnhandledException(Il2CppObject*) (Runtime.cpp:440)
5 crashreporttest ScriptingInvocationNoArgs::Invoke(ScriptingException**) (ScriptingInvocationNoArgs.cpp:131)
6 crashreporttest ScriptingInvocationNoArgs::Invoke() (ScriptingInvocationNoArgs.cpp:95)
7 crashreporttest MonoBehaviour::CallUpdateMethod(int) (MonoBehaviour.cpp:541)
8 crashreporttest void BaseBehaviourManager::CommonUpdate<BehaviourManager>() (Behaviour.cpp:169)
9 crashreporttest PlayerLoop(bool, bool, IHookEvent*) (Player.cpp:1721)
10 crashreporttest UnityPlayerLoopImpl(bool) (LibEntryPoint.mm:240)
11 crashreporttest UnityRepaint (UnityAppController+Rendering.mm:238)
12 crashreporttest -[UnityAppController(Rendering) repaintDisplayLink] (UnityAppController+Rendering.mm:54)
13 QuartzCore CA::Display::DisplayLinkItem::dispatch()
14 QuartzCore CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long)
15 IOKit IODispatchCalloutFromCFMessage
16 CoreFoundation __CFMachPortPerform
17 CoreFoundation __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__
18 CoreFoundation __CFRunLoopDoSource1
19 CoreFoundation __CFRunLoopRun
20 CoreFoundation CFRunLoopRunSpecific
21 GraphicsServices GSEventRunModal
22 UIKit UIApplicationMain
23 crashreporttest main (main.mm:32)
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.