andorid 打印调用栈
发布日期:2021-06-30 21:23:23
浏览次数:2
分类:技术文章
本文共 1320 字,大约阅读时间需要 4 分钟。
在调试过程中经常会出现程序出现的结果不是我们预期的结果,那就需要加Log打印调试,看调用过程是否正确,此时就需要打印程序的调用栈,特别是Android代码相当庞大,打印堆栈更有利于我们分析问题,下面就记录下平时用到不退出程序打印堆栈的方法。
验证的方法相关简单,在Activity的类中创建一个方法ThrowException,在onCreate中调用此方法,看打印出什么
在android中如果找不到方法调用位置可以使用 打印调用栈
public void ThrowException() { // 调试打印堆栈而不退出 Log.d(TAG, Log.getStackTraceString(newThrowable())); // 创建异常打印堆栈 Exception e = new Exception("this is a log"); e.printStackTrace(); // 获取当前线程的堆栈 for(StackTraceElement i : Thread.currentThread().getStackTrace()) { Log.i(TAG, i.toString()); } RuntimeException re = newRuntimeException(); re.fillInStackTrace(); Log.i(TAG, "stackTrace", re); // 主动抛出异常调试 try { Log.i(TAG, "--------------------NullPointerException-------1"); thrownew NullPointerException(); } catch(NullPointerException e1) { // TODO: handle exception Log.i(TAG, "--------------------------------NullPointerException"); Log.e(TAG, Log.getStackTraceString(e1)); // e1.printStackTrace(); } Log.i(TAG, "--------------------------------NullPointerException-----------end"); }
1、Log.d(TAG, Log.getStackTraceString(new Throwable()));
Exception e = new Exception("this is a log");
e.printStackTrace();转载地址:https://liwangjiang.blog.csdn.net/article/details/89401167 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年05月04日 11时55分20秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
OpenCV杂记 - Mat in C++
2019-04-30
lnmp部署
2019-04-30
location区段
2019-04-30
nginx访问控制、基于用户认证、https配置
2019-04-30
用zabbix监控nginx
2019-04-30
SaltStack
2019-04-30
Linux添加系统调用
2019-04-30
linux内存的寻址方式
2019-04-30
ubunut16.04的pip3出现问题,重新安装pip3
2019-04-30
how2heap-double free
2019-04-30
how2heap-fastbin_dup_consolidate
2019-04-30
orw_shellcode_模板
2019-04-30
[fmt+shellcode]string
2019-04-30
fmt在bss段(neepusec_easy_format)
2019-04-30
[double free] 9447 CTF : Search Engine
2019-04-30
python 函数式编程
2019-04-30
python编码
2019-04-30
redis cli
2019-04-30
redis api
2019-04-30
flink physical partition
2019-04-30