Is there a way to report Bugs, similar to the Android Feedback Client, but without registering my application at the market. I'm still working on the application and some users are alpha testing it so it would be useful to receive reports/ stacktraces etc. Is there a common way or an application for that?
You can look at ACRA Project - http://acra.googlecode.com/
You can use Instabug which lets you report bugs right from the app by shaking the phone. It sends you all the device details, network logs, view hierarchy inspection, as well as the steps to reproduce it. It takes a line of code to integrate.
For full disclosure. I work at Instabug.
I've used acra and it works well: http://acra.googlecode.com/
see: How do I obtain crash-data from my Android application?
I have used Android Remote Stacktrace before, it was very easy to setup, but when I set it up I don't think it had as many options as A.C.R.A does - I haven't used either in a while so I'm not sure which is better.
Related
I had Firebase Crashlytics installed in my Android app, and the reporting is operational.
However, I found that some issues are very similar:
And it'd be helpful if I could treat them as the same issue when debugging or closing.
Is there any chances I can merge them into one?
It is not possible to merge these crashes. Crashlytics will group the issues based on the frame being blamed. In this case, even though they look similar, the frame is under a different line number.
You could file a feature request for this behavior.
Because Google told me to, I've been using Log.I , Log.E etc commands throughout my code during development.
This of course has been quite helpful during testing and debugging.
However an application that I have deployed seems to be crashing sometimes, something which I cannot replicate.
Is there a way to retrieve the logs created through the aforementioned commands from the device? I've been through the whole google development site, but there seems to be nothing on the subject (or I am missing something)
Thanks in advance for any help you can provide
Try to look at ACRA and Crashlytics, this tools should help you.
We are using Cordova 5.0.0 and its cordova-camera-plugin
When we are testing it on Android, the app crashes when the user takes a photo.
Looking at the links below, it seems that our app is being killed while the camera app it on front.
PhoneGap camera restarts the application
https://github.com/shaithana/cordova-plugin-wezka-nativecamera
While there are some answers but it seems to be outdated: The foreground camera plugin is not suitable to newer devices or Cordova and other solutions didn't work for us
Does anyone have an up-to-date solution?
Try to use this forked cordova-android and cordova-plugin-camera.
The docs, sample and discussion on the approach used can be found in the cordova-android PR.
BTW, the PRs are going to be merged soon.
First question that comes to my mind is: Why using this camera plugin: https://github.com/shaithana/cordova-plugin-wezka-nativecamera
It's obviously a fork. You might have a good reason for that. It's also outdated. Last contribution was one year ago.
Maybe you want to give the "official" plugin a shot:
https://github.com/apache/cordova-plugin-camera
Going deeper into detail without knowing more about your testing environment (which device(s) with which Android version) and without having possibility to review entire related code, is not possible and answers may not give any reliable advice for change.
Have you ensured, that the call to the camera plugin cannot happen before "deviceready" was triggered? Is cordova.js loaded?
Update:
You may also want to switch from raw alerts to console output. I recognized several times that alerts in callbacks triggered from plugins could cause some trouble.
As a general rule of thumb: Use console.log() instead of alert() and connect with Chrome (chrome://inspect) to the emulator or device to see what happens. You can additionally use adb logcat to have a look into the device log.
Strange enough problem...
Okay, here's my situation. In my Android application I'm using 3rd party component which generates a lot of Logcat logs. I don't have sources of those component :(
For some security reason I need to find way to somehow intercept those logs before they appearing in Logcat.
Is it possible? Any ideas?
You can use ProGuard on the 3rd party library to strip it of all calls to the Log class as per this answer to a similar question: https://stackoverflow.com/a/2019002/1122135
If the source code is available for the library, I would recommend building your own version of the library without the debug output.
Is there any way that I can get crash logs from a device which is signed with a public key, but not uploaded in android market? I need a way to get crash logs from a specific device to see why my application is crashing on it. Anyway to do this?
There are various frameworks for this. ACRA is one of them (http://code.google.com/p/acra/). Another that I frequently use is Bugsense (http://bugsense.com/). There are more also, but I think these two will be perfect for you!
Hope this helps!
Update:
In case you don't want to add any external library, you have to do it by your own. This means that Android in general has a mechanism to catch all uncaught exceptions. This is http://developer.android.com/reference/java/lang/Thread.html#setDefaultUncaughtExceptionHandler%28java.lang.Thread.UncaughtExceptionHandler%29.
There you can catch all uncaught exceptions and handle them as you wish (write to a file, send them, etc). All there libraries internally use this mechanism, but provide a wrapper to the user.
One option is installing and running a LogCat application (e.g. aLogcat) on the target phone. This can capture all logcat output - including exceptions - for the overall system and/or the app in question - using a filter.