我最近将ACRA升级到版本4.5.0,我的自定义ReportSender中的send方法不再被调用。
通过查看日志,它似乎正在尝试将崩溃报告上传到Google文档。
我在下面提供了一些代码。
自定义ReportSender:
public class AcraPassportSender implements ReportSender {
...
public AcraPassportSender(int versionCode, boolean isStoreVersion){
...
}
@Override
public void send(CrashReportData report) throws ReportSenderException {
PLog.i(TAG, "Attempting to create and upload a bug report");
...
}
}
申请类:
@ReportsCrashes(formKey="")
public class MyApp extends Application {
@Override
public void onCreate() {
ACRA.init(this);
AcraPassportSender acsender = new AcraPassportSender(version, isStoreVersion);
ACRA.getErrorReporter().setReportSender(acsender);
}
}
日志显示ACRA已初始化。这在我升级ACRA之前有效。关于这里可能发生什么的任何想法?
答案 0 :(得分:0)
您可以在website of ACRA上找到以下句子:
自Google最近更新Google表格以来,谷歌的使用情况 作为ACRA报告的存储引擎的文档现已弃用。
据我所知,Google表格是ACRA中默认的崩溃报告方法。您可以查看ACRA project on GitHub并尝试使用与Google表单不同的报告方法。
此外,我建议您使用比ACRA更好的Crashlytics等工具,允许您收集崩溃报告并监控您的应用程序。请注意,Crashlytics被Twitter收购,现在它们可以在fabric.io域下获得。您还可以使用Bugsnag等付费工具或创建自己的报告解决方案。
答案 1 :(得分:0)
最新版本的ACRA是4.6.2。我建议升级到那个。
在4.6.0中删除了GoogleFormSender。除此之外,很难知道什么是goinf因为你没有发布你的发件人的代码而你还没有发布你的logcat。
我建议先升级到4.6.2再重新评估。