Android 源码系列文章:

Mac 10.12 快速下载 Android 源码

Mac 10.12 编译 Android 源码

使用 IntelliJ 查看 Android 源码

使用 IntelliJ Debug Android 源码

这里推荐使用 IntelliJ 查看 Android 源码, 而不是Android Studio,
因为我们要以一个java 项目来打开 Android 源码, 而不是 Android 项目. 为了不影响我们日常的开发, 还是使用 IntelliJ 打开会好一些

其实官方有文档有说, 如何使用 IDE 来查看码
https://android.googlesource.com/platform/development/+/master/tools/idegen/README
不过不是很清晰.

生成 IDE 相关的项目文件

在源码目录下执行如下代码:

make idegen && development/tools/idegen/idegen.sh

执行完成后会在源码目录下生成如下文件
使用 IntelliJ 查看 Android 源码_第1张图片

配置 IDE 环境

在 Finder Application 中找到 Intellij 鼠标右键, 然后在点击显示包内容, 如下图:
使用 IntelliJ 查看 Android 源码_第2张图片

然后找到 idea.vmoptionsidea.properties 这两个文件
使用 IntelliJ 查看 Android 源码_第3张图片

修改idea.vmoptions

修改为如下:

-Xms748m-Xmx748m-XX:MaxPermSize=350m-XX:ReservedCodeCacheSize=240m-XX:+UseCompressedOops

主要修改-Xms-Xmx
这里可根据自己机器性能调整, 不过最好Xms的值和Xmx值一样 , 这样就能一下获取最大内存了

修改idea.properties

由于我们的 Android 源码目录文件是区分大小写的, 所以需要在 idea.properties 加入如下配置

idea.case.sensitive.fs=true

同时还要修改 idea.max.intellisense.filesize 的值为5000 或更大
我的配置如下:

idea.popup.weight=heavyidea.dynamic.classpath=falseswing.bufferPerWindow=falseCVS_PASSFILE=~/.cvspassidea.smooth.progress=falseidea.max.intellisense.filesize=5000idea.xdebug.key=-Xdebugapple.awt.fullscreencapturealldisplays=falseidea.cycle.buffer.size=1024com.apple.mrj.application.live-resize=falsejava.endorsed.dirs=sun.java2d.noddraw=truesun.java2d.pmoffscreen=falseidea.use.default.antialiasing.in.editor=falseidea.fatal.error.notification=disabledapple.awt.graphics.UseQuartz=trueidea.no.launcher=falsesun.java2d.d3d=falseapple.laf.useScreenMenuBar=trueidea.case.sensitive.fs=true

只修改了上面那两条, 其他的都是默认配置

配置 IDE project

打开 IntelliJ 选择 Open Project , 选择 Android 源码目录.
使用 IntelliJ 查看 Android 源码_第4张图片

打开 project Structure
使用 IntelliJ 查看 Android 源码_第5张图片

设置 jdk

添加一个新的 jdk 并且删除 classpath 中的所有jar 包如下图:
使用 IntelliJ 查看 Android 源码_第6张图片

设置AOSP 项目依赖

把 android 项目原本的依赖删除, 并设置上我们之前添加的 jdk
使用 IntelliJ 查看 Android 源码_第7张图片

设置编译处理的 R 目录为源码目录

右键 R 目录, 在那点击 Sources, 将其设置为源码目录
使用 IntelliJ 查看 Android 源码_第8张图片

接下来 Synchronize Project 即可安心的看源码了, 而且没有错误提示, 也可以任意跳转了
使用 IntelliJ 查看 Android 源码_第9张图片

能够查看源码, 是不是也可以 debug Android 源码了? 请查看使用 IntelliJ Debug Android 源码

更多相关文章

  1. Android:Native C源码(NDK)如何使用sqlite3进行编程?
  2. android应用软件源码
  3. Android的Btimap处理大图片解决方法
  4. 如何实现手势缩放图片
  5. 直播软件源码Android 多个ImageView拖拽互换图片
  6. 【Android 界面效果6】Android 控件之ImageSwitcher图片切换器
  7. Android Binder驱动源码下载地址
  8. android图片上传

随机推荐

  1. Android性能优化:绘制优化
  2. android 盈利模式
  3. Android如何保持屏幕常亮
  4. android selector 的几种状态
  5. 史上最好用的Android全量版本更新库XUpda
  6. TabHost和android:layout_height="0.0dip
  7. android -调用系统的拍照程序
  8. 局域网内通过无线实现android设备的socke
  9. android中图片压缩分析(下)
  10. 布局技巧:使用ViewStub