Android: crash reports libs and services
Rabu, 29 Agustus 2012
0
komentar
The world is not ideal. And even the best tested applications crashes sometimes.
That is why it's important to receive detailed crash reports to find the crash reason and fix it!
Leaving your users with crashes alone, while developers don't even know about crashes - is the worst case scenario! You should always be in touch with users to provide the best user experience.
So how we will make it?
Well, you may know that Android 2.2 Froyo introduced a bug report feature. Developers will receive freeze and crash reports from their apps. It looks something like this:
When app crashes Android run-time will pop-up dialog with option to send report about what happens.
Well, it's definitely not bad. But user may just skip it by pressing "Force close" button. And we also need to support our users with pre Android 2.2 devices.
So in this article I want to list several libs and services that may be useful for crash reports handling.
1) ACRA http://code.google.com/p/acra
I suppose it was one of the first solution for Android apps (SDK v1.5+ support) to handle crashes. It's free and open source! :) And now it's very mature and has a lot of great options:
- configurable user interaction (silent reports, Toast notification, status bar notification + dialog)
- detailed crash reports
- ability to add your own variables content or debug traces
- send error reports even if the application doesn't crash
- and more!
All you need to do is to add small jar file to your project, configure it a little bit (usually which data to send and where to send) and that's it! Now next time app crashes, you will know about it and there will be details (such as phone vendor, model, stack-trace, etc.) about it.
Finally, I like ACRA a lot and it's my favorite tool for handling crash reports. ACRA is great, really!
Then, why do we need to talk about other tools if ACRA is so great?
First of all, variety is good. In the second place, you definitely will need some front-end to view and analyse all reports. But ACRA is just a library. Yes, ACRA can submit reports to Google Docs spreadsheets, but you may find it a little bit tedious to use.
So below there are tools and services that provide nice front-ends to visualize crash reports. Some of them has their own libraries (e.g. Crittercism), some of them can be integrated with ACRA (e.g. Bugsense or HockeyApp).
Most of them are paid (not all, e.g. Bugsnag actually is in free beta) but has free limited plans also.
2) Crittercism (crash reporting and customer support SDK for iOS and Android apps)
http://www.crittercism.com
3) BugSense (tool that collects and analyzes crash reports from mobile apps)
http://www.bugsense.com
4) Bugsnag (helps capture exceptions in real-time from web, mobile and desktop applications)
https://bugsnag.com
5) Logentries (log management and analysis service)
https://logentries.com/
Instructions how to collection data from ACRA:
http://www.vaudaux-ruth.com/android-log-collecting-with-acra-and-logentries
6) HockeyApp (provides the way to distribute app betas and collect live crash reports for beta and release apps on Mac OS X, iOS and Android)
http://www.hockeyapp.net
Instructions how to wire up HockeyApp with ACRA:
http://support.hockeyapp.net/kb/client-integration-android/how-to-use-acra-with-hockeyapp
7) Zibhium (a platform for Android beta distribution, real time crash analytics, with a built in support desk)
https://www.zubhium.com
If you know some other tools or services that can be helpful with app crash reports handling, then give me to know. I will add them to the list! ;-)
Baca Selengkapnya ....