从我的搜索中,我得到了以下用于获取崩溃日志的代码。
try {
Process process = Runtime.getRuntime().exec("logcat -d");
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(process.getInputStream()));
StringBuilder log=new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null)
{
log.append(line);
}
但是我应该在哪里添加这段代码,以便在我的应用程序崩溃时得到崩溃报告。
我也想通过电子邮件发送或发送到服务器,但是在应用程序崩溃后,如何调用操作来发送电子邮件/HTTP post 方法。
请提前告知并感谢。
最佳答案
处理崩溃日志的最佳方法是创建一个 UncaughtExceptionHandler
并根据您的要求进行处理。创建一个 BaseActivity
类并用它扩展所有 Activity 并将这些代码内容放入 BaseActivity
类中。
private Thread.UncaughtExceptionHandler handleAppCrash =
new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable ex) {
Log.e("error", ex.toString());
//send email here
}
};
然后只需在 BaseActivity
的 onCreate()
方法中启用
Thread.setDefaultUncaughtExceptionHandler(handleAppCrash);
因此,现在只要您的应用程序发生崩溃,uncaughtException()
就会被调用,您将不得不相应地处理崩溃。
关于android - 获取崩溃日志并将其作为电子邮件发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20399371/