android framework层调试

作者: 大批 | 来源:发表于2017-08-14 01:42 被阅读99次

    :)

    侵删

    平时一般开发的时候可能用不到源码调试,但是在学习的时候很有可能还是会用到,特别是分析流程的时候


    需要的知识

    • Android里面每一个应用程序都对应着一个虚拟机(至少一个进程)
    • 要调试就要首先清楚的知道需要调试那个进程
    • 每个虚拟机在启动的时候都会启动一个jdwp线程,这个线程就是专门用来调试的
    • 这个jdwp线程可以建立在adb或者tcp基础上,与DDMS或debugger进行通信
    • 也就是所我们只要用debugger链接上这个线程就可以调试了

    调试的前提条件

    • 我们app的进程的话,需要时候debug的默认签名默认就是可调式的,如果不是debug默认的签名就需要在AndroidManifest里面添加一个可以调试的标记
    • 如果需要调试系统的进程,就用模拟器
    • 还有就是需要把模拟器对应版本的源代码下载下来(我这里就使用23的版本)

    调试过程

    • 打开模拟器(我打开的是23的模拟器)
    • 使用debugger连接到指定的进程(as 的Run菜单的最后一个
    • 选择一个进程


    • 如果连接成功控制台会有日志信息


    • 这个时候就可以打断点进行调试了

    最后需要注意的是Android里面有很多跨进程的操作(binder),要选中正确的进程才行

    感谢那些愿意分享的人 have a good day ~

    相关文章

      网友评论

        本文标题:android framework层调试

        本文链接:https://www.haomeiwen.com/subject/mqeyrxtx.html