I want to add a Bug Report/Report Problem option to my app, which sends device and app info and a user's comment to the developer. I was wondering if there are any "standard" things to report? I am reporting OS Version, Device Name and App Version. Is there anything important I'm missing out and should include? What are you guys normally including ?
You could avoid sending out this data manually by integrating with a service like Instabug
which allows the user to report bugs through your preferred method, but mainly through shaking the device.
It will display a screenshot of the current view that the user can draw on for visual bug identification. What gets reported along is (but not only) the following:
App version
Device type
OS version
Location
CPU load
Memory usage
Storage
Connectivity
Battery
Orientation
Network and console logs
Visual reproduction steps
UI view hierarchy inspection
users can further describe the bug using text, extra screenshots, voice notes, or screen recordings.
All reports arrive in your Instabug dashboard containing various details such as:
Network and console logs
Complete Device details
Reproduction steps
Crash stack trace (In case of a crash report)
It only takes a line of code to integrate.
For full disclosure, I work at Instabug. Let me know if I can help.
Check out the free service
http://www.crashlytics.com/
you can get the features what is mentioned above.
Related
I hope title itself says what my question is.
My app is crashing at very rare scenarios like nearly 1 out of 100 times.
I am not using any crash log tools and not logging exception causes.
I want to know does Android system maintains any crash log report when the app is crashed either in System level or in App level.
Thanks
Android system maintains a crash report and sends to the developer but the user has to allow this.
And then you can check it here in Android Developer Console:
As an alternative you can use third-party loggers like Liquid, Crashlytics (mention in another answer), Splunk MINT Express (ex-Bugsense) or any other from this links
I don't think so, if you can't debug it in real time with the IDE (DDMS and LogCat), you must use Crashlytics or any other similar tool.
I use it in all my apps, it is very useful.
I have been working on an android project and published it to the market. I then installed the app on my device via the play store and upon doing something I found a possible way to crash the app.
When the app force closed it asked me if I wanted to send a report which I did so I could see what it looks like in the developer console.
I added some text about what I did to cause the app to force close and could then view what the crash report looked like and it conained various information like device make and model etc. I submitted and I logged in to my developer account but could not see any of the information within the crash report other than the message I put inside explaining what I did.
Where does the rest of the information go as unless someone actually says what phone or android version they are running in the message I don't what I need to replicate the issue.
Thanks for any help you can provide.
AFAIK, you cannot view the device etc. in the developer console. You can only view the user message (if provided) or the stack trace. Beyond that there is no more information as far as I know.
However, you can get much more information by integrating ACRA into your application. This will give you a huge amount of information about the crash, including memory statistics, the device, the android version it is running etc.
EDIT
It would seem that the device at least is displayed in the new Developer Console, but the information still isn't even close to what ACRA provides.
With the standard report included it depends a bit on android(?) or play store app version what details you get in your reports it seems. In the publisher/developer console (example from the new developer console version):
I have an App available in the Android Market.
From time to time i get error reports in the Developer Console. For about 6 month there have been no more stack-traces visible. At first I though no more post-froyo bugs: 'yay'!
Recently I did some testing using a droid 2 which I am sure is not pre-froyo, I ran into an error, reported it, and never received this report in the Console.
Did I miss some configuration or option that enables me to receive stacktraces?
Is there something I can do about it?
I have no idea why you don't receive stack traces anymore nor how could you enable them. I have always felt Android Market is a somewhat unreliable service: reports are not accurate, downloads/active counts randomly change at times, crash reports not received, and so on.
However, I have suggestions how to implement similar functionality yourself and with a more reliable fashion: How do I obtain crash-data from my Android application?
Basically there are two options:
Use an existing component (like acra)
DIY by catching all uncaught exceptions.
(So you would have an option should you fail to receive a real solution)
I'd suggest you to stop listening to android market and work with other tools.
You should consider using a crash report tool like http://www.bugsense.com/ which is simple effective and meaningful
NOTE: i am not linked nor affiliated in any way with bugsense owners. I am just a simple user.
I have developed an app and want to make sure that whenever an unexpected crash occurs, the user is able to send a crash report.
From Android 2.2 onward I read that Android has something build in for this. However, in my case, the application crashes in one special situation, but only the "Force close" button is shown.
The button is not shown in the app downloaded from the Market as well as when I install it directly on my telephone.
Must I perform some programmatic effort to achieve this?
Crash report options are given to users of Android >= 2.2. As a developer you don't need to do anything with your code just monitor your developer account for crash/freeze reports.
See this blog
You can add Crash Report SDK in your project. If an unexpected crash occurs, it will be reported to the crashlog.org platform. You can view the crash log on this platform, where offers Stack traces, Memory, Storage, Thread and Process information for debugging.
How do you instruct users to report a bug in Android? Any advice or tips?
I'd like to get send detailed instructions to my users to get the most of their bug report. I know there are various apps that send bug reports from the device and I was wondering how other Android developers deal with this.
A bug reporting SDK such as Instabug can let you achieve that.
As you can see, it displays, by default, a welcome message to your users 10 seconds after opening the app. It displays instructions on how to invoke Instabug depending on the invocation method you're using (A button or a shake gesture).
After signing up and including the library in your code, you can switch between different display messages. Use either of the following lines depending on whether you're in beta or production.
Instabug.setWelcomeMessageState(WelcomeMessage.State.BETA);
Instabug.setWelcomeMessageState(WelcomeMessage.State.LIVE);
Each bug report contains various information about device details, network logs, console logs, view hierarchy inspection, and visual reproduction steps.
For full disclosure, I work at Instabug. Let me know if I can help.
There are solutions for instrumenting the application in a way that will collect contextual information and allow the user to provide in-app feedback. Either by shaking the phone or some other trigger like a menu option.
Here is a "currently free" offering from IBM called Mobile Quality Assurance, that will instrument the application so that as a user uses the application contextual information is collected as they use the app. When they want to provide feedback or submit a bug, they can shake the phone and it will capture the screen at the time, give them a form to enter additional information and then submit the screenshot, contextual information and comments to the testing portal.
Here's a link for more info on MQA
Taking Gilbert's advice into account, I decided to create my own app. I hereby present you: Bug Reporter.
It allows users to send you a report with device information and optional logcat. It also supports intent extras to customize its behavior if case you want to launch it from your app.
You can do what google does with their new maps application on iPhone. When you're using the app and shake the phone (which users do when they're frustrated or something isn't working) you can pop up a screen that asks if something is wrong and is a form for bug submission that they can choose to fill out.
This isn't Android specific, but you could have a bug reporting screen in your application that sends the information your customers type, along with any system information you wish to capture, to your web server. Alternatively, the application could email you with the information.
There are some libraries you can integrate to do this job, you don't need to develop a solution yourself. For example, I'm using blit feedback. With this library you can take snapshots, draw on them and add some comments. I've configured it to send reports by email, but if you have an issue tracker you can connect it too.
Discovered this question a lot late. There are answers given but the products mentioned or the techniques are quite old now. Adding the tool that we have been working on - Bugclipper
This tool let's your users report issues from with-in the app Android or iOS and you can add/annotate screenshots, create screen recordings with voice and also get the crash logs.
p.s. - I am one of the co-founders.