验证ACRA是否正常工作



我正要发布一个应用程序,我看到了一个关于发布应用程序之前应该做什么的stackoverflow问题。它告诉我使用ACRA,所以我遵循了本页的说明。

我有一个叫MyApplication的类,像这样:

import android.app.Application;
import org.acra.*;
import org.acra.annotation.*;
@ReportsCrashes(formKey = "", // will not be used
mailTo = "c@gmail.com",
mode = ReportingInteractionMode.TOAST,
customReportContent = { ReportField.APP_VERSION_CODE, ReportField.APP_VERSION_NAME, ReportField.ANDROID_VERSION, ReportField.PHONE_MODEL, ReportField.CUSTOM_DATA, ReportField.STACK_TRACE, ReportField.LOGCAT },   
resToastText = R.string.crash_report_text)
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// The following line triggers the initialization of ACRA
ACRA.init(this);
}
}

现在很明显,当我的应用程序崩溃时,我认为用户应该能够以某种方式发送报告,所以我在应用程序中放置了一个空指针,但它只是崩溃了,什么也没发生。我还应该做什么吗?

我想您可能没有在BugSense上注册您的应用程序

你想发送崩溃报告的地方,只取决于你自己。当您使用谷歌文档(现在已弃用)时,您必须使用从谷歌文档中获得的formKey

如果要将报告存储在自己的服务器上,可以将formKey字段留空。您唯一需要做的就是向服务器(formUri = ....)输入一个有效的url。

其他字符串用于对话框的类型,应该或不应该出现。

您可以使用BugSense,而不是使用自己的服务器。请参阅stackoverflow上的此线程。

  • 由于ACRA不赞成使用谷歌文档我建议您使用**BugSense**作为后端服务:

1.转到他们的网站并登录:http://www.bugsense.com/

2.BugSense站点中创建一个要监视的新项目,因此您将收到此应用程序的API Key

3.最后将此行添加到项目中的应用程序类:

@报告皮疹(formUri="http://www.bugsense.com/api/acra?api_key=YOUR_API_KEY",formKey=")

查看BugSense文档

相关内容

  • 没有找到相关文章

最新更新