- 一、导入源码到 Android Studio
- 1. 编译 idegen
- 2. 导入源码
- 3. 开始调试
对于 Android 源码的导入, Google 官方给我们提供了一个很方便的工具idegen
它位于我们所下载的系统源码路径中:
引用 README 的一句话
idegen 工具会自动生成针对 Android 开发工具(Android Studio和Eclipse)的配置文件。 既然如此,那我们就来使用 idegen 工具生成导入源码所需的配置文件。
首先打开命令行工具,cd 进入到源码路径下,
执行如下指令:
在执行完上述指令后,会在源码路径下生成下面三个文件
接下来我们可以开始导入源码了.
由于Android太大了,所以我们需要给IDE更多的内存,在Help > Edit Custom VM 中添加:
这两个参数的意思是初始堆内存为1G,最大堆内存为5G,其实不设置也没什么问题,但是经常会在看代码的时候,出现内存不够的错误信息,所以换个大内存还是很有必要的。
然后是AndroidStudio的类大小配置,在Help -> Edit custom properties中添加:
使用 打开 ,之后AndroidStudio就开始打开项目了,这个过程会比较缓慢,有时,AS会出现如下信息:
大致的意思就是由于项目过于庞大,现在AS没有办法很好的监视整个项目的改变了,可以通过如下方式解决:
- 在/etc/sysctl.conf 文件末尾中添加如下代码:
- 然后在终端执行以下命令:
最后重启AS,等待源码加载完成。
由于 Android 的系统源码非常庞大,一次性导入 Android Studio 的话需要加载非常长的时间
因此,在正式开始导入前,我们可以打开 android.iml 文件根据自己需要调整要加载的源码。
这里 表示不需要加载的目录,我们根据自己的需要使用 标签添加对应的目录地址即可。
在加载完源码后,我们也可以在 Project Structure 中的 Module 选项中右键 exclude 来排除不需要加载的源码目录,如图:
调试前要设置 Project 的 SDK ,File -> Project 下打开 Project Structure,选中 Project 设置对应版本的 SDK,于系统版本一致:
此时点击 工具栏的 按钮,会打开 窗口,我们根据自己需要调试的代码选择对应的进程:
这里假设我们要调试 自带浏览器的源码,如图,我们在它的入口文件 中的 方法中打上断点。
然后我们在 的 输入栏输入 网址进行跳转,我们可以看到,代码成功进入了断点,然后我们就可以随心所欲地调试我们想要的调试的 Java 代码了。
参考:
https://www.jianshu.com/p/4ab864caefb2
http://gityuan.com/2016/08/13/android-os-env/
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/6964.html