我正在尝试在我的应用中使用Acra,我遇到了以下问题。我试图检查Acra的源代码,但仍然无法弄清楚问题。我在Google上找不到任何其他内容。现在我被困在这两天了。我知道它应该是非常简单的东西,但我无法看到它。我觉得额外的一双眼睛可以帮助我。
03-13 12:52:37.588 332-332/? D/ACRA﹕ ACRA is enabled for com.myapp.application, intializing...
03-13 12:52:37.598 332-332/? D/ACRA﹕ Looking for error files in /data/data/com.myapp.application/files
03-13 12:52:37.598 332-332/? D/ACRA﹕ Looking for error files in /data/data/com.myapp.application/files
03-13 12:52:37.608 332-332/? V/ACRA﹕ About to start ReportSenderWorker from #checkReportOnApplicationStart
03-13 12:52:37.608 332-350/? D/ACRA﹕ #checkAndSendReports - start
03-13 12:52:37.608 332-350/? D/ACRA﹕ Looking for error files in /data/data/com.myapp.application/files
03-13 12:52:37.608 332-350/? I/ACRA﹕ Sending file 1f0d91c8-ca49-4de3-82ac-236d6337a2d1.stacktrace
03-13 12:52:37.618 332-350/? E/ACRA﹕ Failed to send crash reports for 1f0d91c8-ca49-4de3-82ac-236d6337a2d1.stacktrace
java.lang.IllegalArgumentException: Package is not a constant in org.acra.ReportField
at java.lang.Enum.valueOf(Enum.java:198)
at org.acra.CrashReportPersister.load(CrashReportPersister.java:264)
at org.acra.CrashReportPersister.load(CrashReportPersister.java:75)
at org.acra.SendWorker.checkAndSendReports(SendWorker.java:140)
at org.acra.SendWorker.run(SendWorker.java:77)
03-13 12:52:37.618 332-350/? D/ACRA﹕ #checkAndSendReports - finish
这是我的申请文件
@ReportsCrashes(
formKey = "",
mailTo = "myemail@anoviceguy.com",
reportType = org.acra.sender.HttpSender.Type.JSON,
mode = ReportingInteractionMode.TOAST,
forceCloseDialogAfterToast = false, // optional, default false
resToastText = R.string.error_something_went_wrong,
)
public class MyApplication extends Application {
@Override
public void onCreate() {
ACRA.init(this);
super.onCreate();
}
@Override
public void onTerminate() {
super.onTerminate();
}
}
答案 0 :(得分:0)
好的,在阅读之前生成的崩溃报告时,它遇到了一大块数据' Package'它认为是ReportField的一个实例。但是没有ReportField.PACKAGE所以它会崩溃。
崩溃有两种可能的原因。
在任何一种情况下,解决方案都是清除app的数据。 在第二种情况下,可以说ACRA可以更好地编写崩溃报告,从而以更好的方式忽略无效配置。记录ACRA的问题。