ACRA应用程序崩溃库不会捕获设备异常

时间:2016-03-01 01:19:53

标签: android debugging logcat error-log acra

我正在使用最新的ACRA库来获取真实Android设备的崩溃报告。然而,当应用程序崩溃ACRA Toast确实显示并且我无法获得崩溃报告。

这是我的MainApplication.java:

package com.mydomain.myapp;

import android.app.Application;
import android.content.res.Configuration;

import org.acra.ACRA;
import org.acra.ReportField;
import org.acra.ReportingInteractionMode;
import org.acra.annotation.ReportsCrashes;

@ReportsCrashes(formUri = "http://example.com/debug.php", mailTo = "myname@mydomain.com", //formUri ="http://yourserver.com/yourscript",
  customReportContent = { ReportField.APP_VERSION_CODE,    ReportField.APP_VERSION_NAME, ReportField.ANDROID_VERSION, ReportField.PHONE_MODEL, ReportField.CUSTOM_DATA, ReportField.STACK_TRACE, ReportField.LOGCAT },
  mode = ReportingInteractionMode.TOAST,
  //mode = ReportingInteractionMode.SILENT //,
resToastText = R.string.crash_toast_text) //, logcatArguments = { "-t", "100", "-v", "long", "ActivityManager:I", "MyApp:D", "*:S" }
public class MyMapApp extends Application {

@Override
public void onConfigurationChanged(Configuration newConfig) {
  super.onConfigurationChanged(newConfig);
}

@Override
public void onCreate() {
  ACRA.init(this); //switching this did not work with super.onCreate()
  super.onCreate();

  // The following line triggers the initialization of ACRA



}

@Override
public void onLowMemory() {
  super.onLowMemory();
}

@Override
public void onTerminate() {
  super.onTerminate();
}


}

AndroidMainfest.xml

<application
android:name=".MyMapApp"

...

<service
android:name="org.acra.sender.SenderService"
android:exported="false"
android:process=":acra" />

的build.gradle:

dependencies {
  compile 'ch.acra:acra:4.6.2'
}

我已经在设备上设置了电子邮件帐户。为什么这不会赶上应用程序崩溃?

1 个答案:

答案 0 :(得分:0)

我找到了崩溃程序的核心库。 ACRA仅捕获Java虚拟机中的崩溃。我必须首先根设备。使用adb进入/ data / towbstone /并在那里存档转储文件。这告诉我崩溃应用程序的确切库。