我需要计算我的设备上有多少应用程序崩溃。我怎样才能做到这一点?存储此计数的位置?我需要创建一些具有多个崩溃的字段。每次崩溃后我都应该增加这个数字。
答案 0 :(得分:1)
在您的应用程序中的第一个onCreate中启动以下代码: 将int保存到SharedPreferences中的文件中。每次此代码命中时将其增加一。
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(final Thread thread, final Throwable ex) {
ex.printStackTrace();
//increase int here
final StringWriter sw = new StringWriter();
final PrintWriter pw = new PrintWriter(sw);
ex.printStackTrace(pw);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(Intent.EXTRA_EMAIL, "");
intent.putExtra(Intent.EXTRA_SUBJECT, "My App is on fire!");
intent.putExtra(Intent.EXTRA_TEXT, sw.toString());
startActivity(Intent.createChooser(intent, "Send Crash Log"));
Variables.activity.finish();
System.exit(0);
}
});
这将满足您的目的,甚至要求他们通过电子邮件向您发送崩溃日志。你永远不应该有任何已知的错误或任何需要增加一个计数器。这是一个坏主意。但无论如何我提供了代码