Журнал сбоев iOS Crashlytics показывает _hidden даже после загрузки битового кода dSYM в ткань

Я довольно долго исследовал сбой в нашем приложении и до сих пор не могу понять, почему Crashlytics не может символизировать некоторые из сбоев (3, если быть точным). На самом деле это текущие крупные сбои приложения, и мы отчаянно ищем любую возможную подсказку.

В нашем приложении включен биткод и включена загрузка dSYM в Apple. Я попытался прочитать документ Crashlytics Все о пропавших без вести dSYM вручную. загрузите zip-архив dSYM из iTunesConnect, загрузите его в ткань. Число «скрытых» сбоев впоследствии продолжает расти, и проблема в том, что мы никогда не получаем предупреждение об отсутствующем dSYM в ткани, и он не показывает отсутствие dSYM в страница настроек ткани для сборки приложения, которую мы пытаемся исследовать.

Трассировка стека выглядит следующим образом: Сбой трассировки стека

Любая помощь и предложения будут очень признательны! Спасибо!


person congsun    schedule 27.01.2018    source источник


Ответы (1)


Я не могу сказать вам, почему символизация не удалась. Но, глядя на ваш отчет о сбоях, мне приходят в голову несколько вещей, может быть, они могут вам как-то помочь.

Сбой происходит внутри замыкания, которое каким-то образом использует UIWebView. После того, как вы что-то сделали с javascript, ресурсы освобождаются, и тогда происходит сбой. Вы можете проверить последний код, вызванный здесь:

https://github.com/WebKit/webkit/blob/f43689c3ed50cd00bf76d5731983046b988e6efa/Source/WebCore/loader/cache/CachedResource.cpp

Ничего необычного там не происходит.

Я предполагаю, что входные переменные закрытия освобождаются слишком рано. Даже если вы слепы, без работающей символики, вы можете попытаться найти замыкания, инициирующие вызовы JavaScript, и проверить эти условия, например. [unowned self] in или подобные и попробуйте передать их в собственность. Очевидно, это может привести к утечке памяти, но вы можете проверить это перед выпуском.

person user2782993    schedule 27.01.2018
comment
Спасибо за Ваш ответ. Проблема с его отслеживанием заключается в том, что единственной частью нашего приложения, использующей UIWebView, является реклама DFP, о реализации которой я совершенно ничего не знаю. Вот почему я хочу получить символический журнал сбоев и, возможно, обсудить его с их командой SDK. - person congsun; 27.01.2018
comment
Вы говорите слепой, это значит нет источника? Но не в этом ли причина ваших проблем с символикой? Извините за, возможно, глупый комментарий, не знаю, какой SDK вы действительно используете... - person user2782993; 27.01.2018
comment
Вы смогли в этом разобраться? - person Sourobrata Sarkar; 20.02.2020