|
|
|||||
Как найти проблему в приложении?
Всем привет.
Есть AIR приложение, которое пользователи скачивают с моего сайта. Все отлично работает. Но, примерно, 1 из 10 пользователей пишет мне в техподдержку о том, что приложение зависает - и у всех на одном и том же месте - появляется загрузчик и на этом всё... Хоть перезагружай приложение, хоть переустанавливай - ничего не меняется. Тут только можно гадать в чем проблема - то ли SharedObject, то ли из-за SSL, а может вообще что-то другое.. Тестил приложение на разных компах - у меня эта проблема не появлялась ни на одной машине - в этом вся и сложность... Как отследить эту проблему на машинах клиентов, которые удалены от меня физически?? Заранее благодарен за любой совет.
__________________
кто не отвечает, того garbage collector забирает |
|
|||||
Только логированием. Сделай запись логов во всех проблемных местах, поставь на все загрузчики блоки try /catch и в catch пиши логи ошибок. В try тоже поставь запись после операции load(), если до лога дойдет, значит все норм. Если проблема во время загрузки, то вероятнее всего именно с загрузкой из сети это и связано. Если грузится с локалки, то проверь как формируются слеши в путях. Вместо слеша "/" или "\" Нужно использовать File.separator, так как на разных операционках используются свои слеши. У меня была из-за этого проблема на линуксе, которую я долго не мог вычислить. Оказалось, что виндовский обратный слеш попадал в путь к файлу
Еще обязательно подпиши все загрузчики на IOErrorEvent.IO_ERROR, и добавь логирование этого события, ну и до кучи SecurityErrorEvent.SECURITY_ERROR. В общем, на все события загрузчика нужно подписаться обязательно Сделай чтобы лог писался в доступное клиентам место, например File.documentsDirectory и попроси отправить его тебе после сбоя
__________________
Ко мне можно и нужно обращаться на ты) |
|
|||||
caseyryan, спасибо. Буду думать.
У меня всё грузится из сети. Из локалки только настройки из кукисов считываются. Хотя у меня предусмотрены настройки по умолчанию и если что, применяются именно они. 1. Для флэш есть менеджер, в котором настраивается доступ к SharedObject.. А куда этот файл пишется для AIR, если у меня приложение Captive Runtime - может ли он быть недоступен? (все эти операции производит swf, который подгружается в air-приложение). 2. Выезжал недавно к клиенту, который находился неподалеку и у него была та же проблема - висит загрузчик в том же месте и ничего больше не происходит. Но как оказалось - если подождать 1-2 минуты, все нормально работает. Т.е. загрузка слишком долго происходит. Хотя на их машине в браузере интернет летает. Вот я и думаю - может проблема не в приложении, а с каким-нибудь фаерволом, либо антивирус блокирует?..
__________________
кто не отвечает, того garbage collector забирает |
|
|||||
Гадать бессмысленно, всё равно что иголку в стоге сена искать. Добавь в приложение глобальный перехват не обработанных ошибок, добавь в ключевых местах выполнения логи, типо: шаг1 - начат/выполнен, шаг2 - начат/выполнен и т.п.
__________________
Дети не должны знать о своих родителях |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
либо добавь индикацию старта приложения.Тупо цифру какую-нибудь рисуй в углу экрана.
|
|
|||||
Цитата:
Как вариант проверь настройки DNS серверов у клиента. Впиши альтернативный гугловский 8.8.8.8. Или если у тебя в проге делается запрос к домену, можешь попробовать заменить его просто IP адресом своего сервера
__________________
Ко мне можно и нужно обращаться на ты) |
Часовой пояс GMT +4, время: 06:04. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|