Android 打印堆栈的几种方法

    public void ThrowException() {
    // 调试打印堆栈而不退出
    Log.d(TAG, Log.getStackTraceString(new Throwable()));

    // 创建异常打印堆栈
    Exception e = new Exception("this is a log");
    e.printStackTrace();

    // 获取当前线程的堆栈
    for (StackTraceElement i : Thread.currentThread().getStackTrace()) {
        Log.i(TAG, i.toString());
    }

    RuntimeException re = new RuntimeException();
    re.fillInStackTrace();
    Log.i(TAG, "stackTrace", re);

    // 主动抛出异常调试
    try {
        Log.i(TAG,
                "--------------------------------NullPointerException-----------1");
        throw new NullPointerException();
    } catch (NullPointerException e1) {
        // TODO: handle exception
        Log.i(TAG, "--------------------------------NullPointerException");
        Log.e(TAG, Log.getStackTraceString(e1));
        // e1.printStackTrace();
    }
    Log.i(TAG,
            "--------------------------------NullPointerException-----------end");
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容