获取崩溃日志并将其作为电子邮件发送

 yuyiyin乐悠悠_964 发布于 2023-02-12 17:32

从我的搜索,我得到以下代码获取崩溃日志.

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发布方法.

请提前告知并提前致谢.

1 个回答
  • 处理崩溃日志的最佳方法是UncaughtExceptionHandler根据您的要求创建并处理崩溃日志.创建一个BaseActivity类并使用它扩展所有活动,并将此代码放入BaseActivity类中.

    private Thread.UncaughtExceptionHandler handleAppCrash = 
                                             new Thread.UncaughtExceptionHandler() {
            @Override
            public void uncaughtException(Thread thread, Throwable ex) {
                Log.e("error", ex.toString());
                //send email here
            }
        };
    

    然后通过使用启用onCreate()BaseActivity的内部方法

    Thread.setDefaultUncaughtExceptionHandler(handleAppCrash);

    所以,现在只要你的应用程序出现崩溃uncaughtException()就会被调用,你将不得不相应地处理崩溃.

    2023-02-12 17:35 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有