我想在后台发送崩溃报告的邮件但无法发送,因为它正在使用 ACTION_SEND
我正在使用代码:formKey = "", mailTo = "abc@gmail.com"
如何创建可以将报告保存到我自己的服务器的URL,如果可以使用任何可用于存储的虚拟URL或任何开源数据库。请推荐。
谢谢
答案 0 :(得分:1)
使用此自定义类
public class AcraCustomSender implements ReportSender {
Context activity;
@Override
public void send(Context context, CrashReportData errorContent) throws ReportSenderException {
activity=context;
String crashReport = "";
try {
JSONObject object = errorContent.toJSON();
Log.e("acra", object.toString());
crashReport = object.toString();
}catch (JSONReportBuilder.JSONReportException e) {
e.printStackTrace();
}
//the string crashreport contains your crash log. you can pass it to your own backend.
}
}
为您的应用程序创建另一个类
public class YourApplication extends Application {
@Override
public void onCreate() {
try {
ACRA.init(this);
AcraCustomSender yourSender = new AcraCustomSender();
ACRA.getErrorReporter().setReportSender(yourSender);
super.onCreate();
}catch (Exception ex) {
ex.printStackTrace();
}
}
}
现在每当应用程序崩溃时你都可以在AcraCustomSender类中获取它,并做任何你想做的事情(比如发送到你自己的数据库)