I don't ever request logs so I'm guessing here.
Are logs only missing for some versions of Android?The READ_LOGS permission is no longer required for JellyBean and up (IO 2012)
Perhaps ACRA is checking for that permission and apps on JellyBean devices don't report it, so no logs are appended. NB logs on JellyBean don't require READ_LOGS to read but only contain log records written by the App.
For us logs are very important, on top of that we need to see logs from entire phone. Sometimes it's sd-card removal that f*ks it up, or some other system-wide action and the only way to guess is to look into logs that were generated around the time when the app crashed. On top of that, our app actually uses multiple processes and we need logs from them as well.
I tried only one phone, not even sure what model it was, I stopped testing since results were unacceptable. In short, I used absolutely identical setup (fully described in the first message), except that I tried to install with acra 4.2.3 and 4.4.0 jars. Old acra produces perfect results and I have no complaints, I was just thinking to update in case if there are some new goodies, but contrary to my expectations it produced way less info (e.g. missing logcat).
Well, unless your users have root access you are bound for disappointment. From JellyBean onwards you cannot get access to the complete device logs. This is not ACRA specific.
Hi, I modified the logcat collection code to comply with the new jellybean logs access policy and the old one... There might be a bug here, I'll have to test again. It would help if you could provide the android version that was running on your test device.
Kevin
if (prefs.getBoolean(ACRA.PREF_ENABLE_SYSTEM_LOGS, true)
&& (pm.hasPermission(Manifest.permission.READ_LOGS))
|| Compatibility.getAPILevel() >= 16) {