Reputation: 6093
I am aware that there are many bug reporting tools, such as ACRA, that can generate content-rich crash reports.
But my question is: Is it possible to identify bugs that don't cause a crash? For example, I got this user feedback for my app:
Images are very low quality, zoom in to a blurry pixelation because you don't load the full sized image.
This bug doesn't cause a crash; in that case, how can I catch them to improve my app? Because if the user doesn't complain, I am unaware of this problem.
Upvotes: 1
Views: 2835
Reputation: 21
Try using Bugclipper. Its exactly the thing you are looking for. It allows users/testers to report issues or share feedback from within the app. It allows screenshots and screen recordings with voice. Works good for beta testing of Android & iOS apps.
p.s. - I am one of the founders of Bugclipper.
Upvotes: 0
Reputation: 6561
Google Mobile App Analytics can report it as an Event
String approxSize=.... //"100K", "500K", "1M"
EasyTracker easyTracker = EasyTracker.getInstance(context);
easyTracker.send(MapBuilder.createEvent("Warning", "Poor quality image", approxSize, 0L).build());
I also report nearly all caught exceptions as an Analytics event - details
Upvotes: 0
Reputation: 2533
ACRA can be used to report unexpected application state as well as Google Analytics but you must do detection on your own.
When unexpected situation is detected it may be reported like this:
ACRA.getErrorReporter().handleSilentException(new IllegalStateException("Low image quality: "+imageUrl));
Upvotes: 3
Reputation: 67522
You can't. You need some way in your code to detect it and send an event. Google Analytics, for example, allows you to send custom events to your analytics, but they still have to be generated by your code:
public void loadImageToView(ImageView iv) {
if (/* some criteria */)
myTracker.sendEvent("bug_report", "image_load", "failed", /* some optional value */);
// ...
}
You could add a feature in your app that allows user feedback which could send device information as well, but I think that's the best you can do. There is no way to auto-detect bugs in your app.
Further reading:
Upvotes: 4