免源码编译将framework导入studio调试

概述 以前的工作中较少涉及framework层代码的修改,需要去查看framework代码时候主要是查找问题和了解系统层实现原理,如今工作中会涉及到framework层代码的修改维护,这就必须要有个好的工具和环境能够实现framework代码的轻松调试。网上找到的方法基本都是在源码编译完成后通过再次编译idegen来实现,这种方法有个最大的弊端就是必须先将源码完整编译一遍,然后再次编译idegen,之后才能够导入studio,导入还需要做些设置和选择,这里介绍一种不需要事先进行源码编译的方法,我使用的android studio版本是4.0.1
1.首先获取对应固件版本的源码 2.将固件烧入手机设备 3.将需要调试的代码导入studio,设置后即可调试 这里详细介绍下第三点导入studio
1.新建一个空目录比如fw_debug
2.在AS中选择File -> Open -> 打开fw_debug(此时该项目是个空项目)
免源码编译将framework导入studio调试
文章图片

3.在AS中选择File -> Project Structure
免源码编译将framework导入studio调试
文章图片

4.选中左侧Modules,右侧选中Source
免源码编译将framework导入studio调试
文章图片

5.点击右侧的Add Content Root,在弹窗窗中添加你想要调试和查看的代码(这里只添加了frameworks/base/core/java)
免源码编译将framework导入studio调试
文章图片

【免源码编译将framework导入studio调试】6.设置Modeles下Dependencies菜单的Module SDK,并且将Module source调到第一个
免源码编译将framework导入studio调试
文章图片

7.设置Project下的Project SDK
至此设置完成,接下来的文件同步会需要花费点时间,同步完成之后就可以连上手机开始断点调试了
免源码编译将framework导入studio调试
文章图片

这里有个需要注意的地方,如果手机刷的版本跟调试用的代码不匹配,断点可能会断到其他地方

    推荐阅读