当前位置:   article > 正文

Android Studio导入Android源码(推荐)_android studio导入ipr关联项目

android studio导入ipr关联项目

实际项目开发中,FWK需要阅读全部的源码,如果直接用AS打开所有源码会很卡,大多数情况下会直接卡死(公司电脑配置如此),体验感极差;如果使用VS Code阅读,有一个缺点就是无法实现AS里的方法跳转,只能搜索,相对会麻烦一些。

所以介绍AS导入Android.ipr的方式阅读Android源码。

一、生成Android.ipr

1、进入项目根目录,执行:

  1. source build/envsetup.sh
  2. lunch 项目版本号
  3. make idegen -j8

编译完成后有idegen.jar生成(编译成功会有 jar包输出路径)

2、再执行

  1. development/tools/idegen/idegen.sh
  2. // 如果直接执行没有权限,需要sudo + 以上命令

会生成android.ipr 和android.iml文件

注:如果在该步骤中出现以下报错,是本地JDK版本较低的原因:

  1. Error: A JNI error has occurred, please check your installation and try again
  2. Exception in thread "main" java.lang.UnsupportedClassVersionError:
  3. Main has been compiled by a more recent version of the Java Runtime
  4. (class file version 53.0),
  5. this version of the Java Runtime only recognizes class file versions up to 52.0

Ubuntu下JDK安装

  1. #更新库
  2. apt update
  3. #查看jdk版本
  4. apt search openjdk
  5. #安装jdk
  6. apt install openjdk-11-jdk

Ubuntu多版本JDK管理

  1. #查看已存在安装版本的jdk
  2. update-alternatives --list java

  1. #选择要使用的版本
  2. update-alternatives --config java

编译器同上,

  1. #查看java编译器版本
  2. update-alternatives --list javac
  3. #更改java编译器版本
  4. update-alternatives --config javac

查看当前Java版本

java -version

二、导入Android.ipr

导入整个源码时需要根据自己的需求来定,打开android.iml文件,把自己不需要导入工程的目录添加进去,将以下内容复制到<content>标签内

  1. <excludeFolder url="file://$MODULE_DIR$/.repo" />
  2. <excludeFolder url="file://$MODULE_DIR$/abi" />
  3. <excludeFolder url="file://$MODULE_DIR$/art" />
  4. <excludeFolder url="file://$MODULE_DIR$/bionic" />
  5. <excludeFolder url="file://$MODULE_DIR$/bootable" />
  6. <excludeFolder url="file://$MODULE_DIR$/build" />
  7. <excludeFolder url="file://$MODULE_DIR$/cts" />
  8. <excludeFolder url="file://$MODULE_DIR$/dalvik" />
  9. <excludeFolder url="file://$MODULE_DIR$/developers" />
  10. <excludeFolder url="file://$MODULE_DIR$/development" />
  11. <excludeFolder url="file://$MODULE_DIR$/docs" />
  12. <excludeFolder url="file://$MODULE_DIR$/libcore" />
  13. <excludeFolder url="file://$MODULE_DIR$/libnativehelper" />
  14. <excludeFolder url="file://$MODULE_DIR$/ndk" />
  15. <excludeFolder url="file://$MODULE_DIR$/out" />
  16. <excludeFolder url="file://$MODULE_DIR$/pdk" />
  17. <excludeFolder url="file://$MODULE_DIR$/prebuilt" />
  18. <excludeFolder url="file://$MODULE_DIR$/prebuilts" />
  19. <excludeFolder url="file://$MODULE_DIR$/sdk" />
  20. <excludeFolder url="file://$MODULE_DIR$/tools" />

打开Android Studio,File -> Open...,选择对应的android.ipr文件

三、关联项目源码

因为AS默认会关联SDK里面的源码,为方便查看项目的源码,需要把SDK源码关联解除,这样我们点击查看某个class时就会打开项目源码的 .java文件,而不是SDK的 .class文件

1、File->Projects Structure->SDKs,新建JDK并任取一个名字,然后清空Classpath、Sourcepath、Annotations、Documentation Paths,也就是新建一个空的JDK路径

2、选择Android API xx Platform(版本不要太低),然后在Java SDK栏选择刚刚新建的JDK,并清空Classpath,Sourcepath,Annotations,Documentation Paths

3、点击Project,SDK栏选择Android API xx Platform

4、点击Modules,点击android,在Dependencies栏删除 <Module source>和 Android API xx Platform以外的所有 jar

最后Apply -> OK即可。

参考文章:Android Studio导入Android源码 - 掘金 (juejin.cn)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/319185
推荐阅读
相关标签
  

闽ICP备14008679号