Обычно при сборке программы определенная информация теряется. Процесс компиляции с потерями и не (полностью) обратим. Информация, которая теряется, включает
- Номера строк относительно исходного кода
- Имена локальных переменных
- Точная структура кода
- . ..
(Обратите внимание, что степень этого полностью зависит от того, какой язык вы используете. С C# и C ++ / CLI сохраняется больше информации, чем с собственным C ++ или другими языками, скомпилированными в собственные двоичные файлы.)
При отладке приложения эта информация хранится в файлах .pdb
(и, я думаю, в некоторой степени в самом двоичном файле), но в выпущенных приложениях этой информации обычно не хватает, поскольку вы не хотел бы, чтобы они были раздутыми и медленными, но гладкими и быстрыми. iOS приложения в любом случае компилируются в собственные двоичные файлы AFAIK, что делает имена методов нечитаемыми. Xcode по-прежнему создает некоторую отладочную информацию ( d ebugging SYM bols, я думаю), которую вы можете использовать для обратного анализа ошибок в большей степени, что это было бы возможно без какой-либо отладочной информации, если ошибки записываются каким-либо образом (например, с помощью AppCenter и, очевидно, Firebase).
Кажется, есть скрипт Firebase , который можно использовать для загрузки файла .dSYM
. Из вашего изображения мне кажется, что есть некоторые средства для загрузки файла из веб-интерфейса (файл .dSYM
- это папка, на самом деле, AppCenter, например, нуждается в заархивировании). После загрузки символов вы должны получить приличную трассировку стека с именованными методами. В любом случае Я не думаю, что вы можете легко получить их, если не сохранили их после создания приложения. Поскольку этот релиз, похоже, загружен только для тестирования, вам повезло. Просто перестройте его и загрузите .dSYM
, который должен находиться в той же папке, в которой находится .ipa
.