Сообщения об ошибках в Android-приложениях

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

Но мой вопрос: возможно ли определить ошибки, которые не вызывают сбоев? Например, я получил следующие отзывы пользователей о своем приложении:

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

Эта ошибка не приводит к сбою; в таком случае, как я могу поймать их, чтобы улучшить свое приложение? Потому что, если пользователь не жалуется, я не знаю об этой проблеме.


person Maggie    schedule 18.05.2013    source источник


Ответы (5)


Вы не можете. Вам нужен какой-то способ в вашем коде, чтобы обнаружить его и отправить событие. Google Analytics, например, позволяет отправлять пользовательские события в вашу аналитику, но они все равно должны генерироваться вашим кодом:

public void loadImageToView(ImageView iv) {
    if (/* some criteria */)
        myTracker.sendEvent("bug_report", "image_load", "failed", /* some optional value */);
    // ...
}

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

Дополнительная литература:

person Eric    schedule 18.05.2013

ACRA можно использовать для создания отчетов неожиданное состояние приложения, а также Google Analytics, но вы должны выполнять обнаружение самостоятельно.

При обнаружении непредвиденной ситуации об этом может быть сообщено следующим образом: ACRA.getErrorReporter().handleSilentException(new IllegalStateException("Low image quality: "+imageUrl));

person koral    schedule 18.05.2013

Вы можете использовать такую ​​библиотеку, как blitfeedback (есть еще несколько, но я ими еще не пользовался), которая позволяет мне сообщать об ошибках внутри моих приложений.

Интеграция более или менее похожа на Flurry. После интеграции вы можете сделать снимок (или несколько), нарисовать на нем (чтобы выделить проблему), добавить заметки и отправить отчет на свой трекер (у меня Jira) или на электронную почту.

person David    schedule 13.11.2013

Google Mobile App Analytics может сообщить об этом как о Событие

String approxSize=.... //"100K", "500K", "1M"
EasyTracker easyTracker = EasyTracker.getInstance(context);
easyTracker.send(MapBuilder.createEvent("Warning", "Poor quality image", approxSize, 0L).build());

Я также сообщаю почти обо всех перехваченных исключениях как о событии Google Analytics – подробности< /а>

person Andy Joiner    schedule 06.01.2014

Попробуйте использовать Bugclipper. Это именно то, что вы ищете. Это позволяет пользователям/тестерам сообщать о проблемах или делиться отзывами внутри приложения. Он позволяет делать снимки экрана и записывать экран с помощью голоса. Подходит для бета-тестирования приложений для Android и iOS.

p.s. - Я один из основателей Bugclipper.

person Puneet Sharma    schedule 28.10.2015