【问题标题】:ACRA Application Crash Library Does not Catch Device ExceptionACRA 应用程序崩溃库未捕获设备异常
【发布时间】:2016-06-13 06:51:07
【问题描述】:

我正在使用最新的 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'
}

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

【问题讨论】:

  • 正如在 Github 上指出的那样,您没有使用最新版本的 ACRA(当前为 4.8.2),并且您使用的是来自 ACRA-4.8.2 的配置,与 ACRA-4.6 无关。 2(例如 SenderService)。您还可以同时指定 formUri 和 MailTo。

标签: android debugging logcat error-log acra


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2013-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多