Когда в управляемом коде возникает исключение, трассировка стека для исключения может помочь вам понять причину исключения. Однако в некоторых случаях управляемая трассировка стека может отображаться не так, как ожидалось, в iOSмобильной операционной системе Apple. Подробнее
См. в Словарь, как описано ниже. Трассировка стека также зависит от конфигурации сборки Xcode.
Отладка сборок
При использовании конфигурации отладочной сборки с iOS IL2CPPразработанный Unity сервер сценариев, который можно использовать в качестве альтернатива Mono при сборке проектов для некоторых платформ. Подробнее
См. в Словарь должен сообщать о надежной управляемой трассировке стека и включать каждый управляемый метод. в стеке вызовов. Трассировка стека не включает номера строк исходного кода C#.
Выпуск сборок
При использовании конфигурации сборки выпуска IL2CPP может создать стек вызовов, в котором отсутствует один или несколько управляемых методов. Это связано с тем, что компилятор C++ встроил отсутствующие методы. Встраивание методов обычно улучшает производительность во время выполнения, но может затруднить понимание стеков вызовов. IL2CPP всегда предоставляет по крайней мере один управляемый метод в стеке вызовов. Это метод, в котором произошло исключение. Он также включает другие методы, если они не встроены.
Если вы можете воспроизвести исключение локально, используйте Xcode, чтобы определить, какие методы были встроены. Запустите приложение в Xcode, используя конфигурацию выпуска, и установите точку останова исключения. Собственное представление стека вызовов в Xcode должно указывать, какие методы действительно существуют, а какие встроены.
Номера строк исходного кода
Стеки вызовов IL2CPP не включают информацию о номере строки исходного кода в конфигурации отладки или выпуска.