Получение пустого LogCat при отправке журналов приложений по электронной почте с использованием ACRA одним нажатием кнопки
Отправка журналов текущих событий моего приложения из Eclipse LogCat
по нажатию кнопки.
Я обнаружил, что это мы можем сделать, определив -
String logcatArguments[] = { "-t", "100", "-v", "long","ActivityManager:I" ,"*:D","*:S"};
Но когда я отправляю с помощью ACRA по нажатию кнопки, LOGCAT
идет пустым "".
Как это сделать с ACRA?
Я получил помощь от -
Моя реализация для нажатия кнопки -
view.findViewById(R.id.logdone).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String logcatArguments[] = { "-t", "100", "-v", "long","ActivityManager:I" ,"*:D","*:S"};
ACRAConfiguration config = ACRA.getConfig();
config.setMailTo("blabla@xyz.com");
config.setResToastText(R.string.crash_dialog_ok_toast);
config.setLogcatArguments(logcatArguments);
try
{
config.setMode(ReportingInteractionMode.TOAST);
}
catch (ACRAConfigurationException e)
{
e.printStackTrace();
}
ACRA.setConfig(config);
ACRA.getErrorReporter().handleException(null);
try {
config.setMode(ReportingInteractionMode.SILENT);
} catch (ACRAConfigurationException e) {
e.printStackTrace();
}
ACRA.setConfig(config);
}
});
Код моего приложения -
@ReportsCrashes(formKey = "",
mailTo = "blabla@xyz.com",
customReportContent = { ReportField.USER_CRASH_DATE, ReportField.USER_COMMENT, ReportField.USER_EMAIL,
ReportField.ANDROID_VERSION, ReportField.PHONE_MODEL, ReportField.BRAND, ReportField.APP_VERSION_CODE,
ReportField.APP_VERSION_NAME, ReportField.STACK_TRACE, ReportField.APPLICATION_LOG,
ReportField.LOGCAT
},
mode = ReportingInteractionMode.DIALOG,
resDialogText = R.string.crash_dialog_text)
@Override
public void onCreate() {
super.onCreate();
// The following line triggers the initialization of ACRA
ACRA.init(this);
}
1 ответ
У меня была похожая проблема при попытке настроить ACRA. Моя проблема заключалась в том, что я не включил разрешение на чтение журнала в Android Manifest.
<uses-permission android:name="android.permission.READ_LOGS"></uses-permission>
Просто двойная проверка.