您的位置:首页 > 移动开发 > Android开发

Ubuntu12.04下Android Studio导入Android源码

2017-10-31 14:10 309 查看
开始之前,先要准备一份已经编译过的Android源码,

同时,你得安装配置了Android Studio(下载地址http://www.android-studio.org/)

1、编译源码idegen模块及生成AS配置文件(*.ipr)

首先进入源码目录,执行如下指令

mmm development/tools/idegen/


当出现如下语句,说明编译OK了

......
#### make completed successfully (7 seconds) ####


接着执行

development/tools/idegen/idegen.sh


这行命令的意思是在根目录生成对应的android.ipr、android.iml  IEDA工程配置文件。当出现如下语句,说明OK了

Read excludes: 21ms
Traversed tree: 194799ms


此时根目录下就出现了android.ipr、android.iml文件。

接着修改android.iml文件,将自己不用的代码过滤掉。想想,如果我们就这么直接导入,会把所有的源码模块导入到Android
Studio中,这会很慢的,如果你的电脑配置不好,可能会直接假死。所以我们最好过滤一下我们不需要的源码文件,只导入我们需要的模块。

比如只要看frameworks的代码,打开android.iml文件,加入如下代码

<excludeFolder url="file://$MODULE_DIR$/.repo" />
<excludeFolder url="file://$MODULE_DIR$/abi" />
<excludeFolder url="file://$MODULE_DIR$/art" />
<excludeFolder url="file://$MODULE_DIR$/bionic" />
<excludeFolder url="file://$MODULE_DIR$/bootable" />
<excludeFolder url="file://$MODULE_DIR$/build" />
<excludeFolder url="file://$MODULE_DIR$/cts" />
<excludeFolder url="file://$MODULE_DIR$/dalvik" />
<excludeFolder url="file://$MODULE_DIR$/developers" />
<excludeFolder url="file://$MODULE_DIR$/development" />
<excludeFolder url="file://$MODULE_DIR$/device" />
<excludeFolder url="file://$MODULE_DIR$/docs" />
<excludeFolder url="file://$MODULE_DIR$/external" />
<excludeFolder url="file://$MODULE_DIR$/hardware" />
<excludeFolder url="file://$MODULE_DIR$/libcore" />
<excludeFolder url="file://$MODULE_DIR$/libnativehelper" />
<excludeFolder url="file://$MODULE_DIR$/ndk" />
<excludeFolder url="file://$MODULE_DIR$/out" />
<excludeFolder url="file://$MODULE_DIR$/packages" />
<excludeFolder url="file://$MODULE_DIR$/pdk" />
<excludeFolder url="file://$MODULE_DIR$/prebuilt" />
<excludeFolder url="file://$MODULE_DIR$/prebuilts" />
4000

<excludeFolder url="file://$MODULE_DIR$/sdk" />
<excludeFolder url="file://$MODULE_DIR$/system" />
<excludeFolder url="file://$MODULE_DIR$/tools" />




到此,配置已经完成,下面开始导入代码到Android Studio

2、Android Studio导入源码

linux下启动Android Studio是使用命令启动,命令如下:

#首先确保在android-studio目录下执行
$ bin/studio.sh




选择Android.ipr



等几分钟,就导入完成了

此时代码已经导入完成了。但是这时候如果你打开一个Service.java类,然后把鼠标放在其中任意方法的Intent参数上按住CTRL+鼠标左键跳转到Intent类你会发现跳转过去的是一个Intent.class文件,为啥呢?因为他跳转的是你的默认SDK中的jar内部的class文件。既然要修改查看整套源码,这么跳转得多蛋疼啊,所以我们需要配置让其能跳转到Intent.java文件,具体做法如下:

首先删掉依赖中的所有依赖,只保留下图中没被选中的那两个(当然你可以选择保留一些你用到的其他jar),如下:



接着点击加号的JARs or directories将你源码的frameworks及external和你用到的其他跳转目录添加到依赖中,然后apply即可。

搞定后,可能会遇到如下报错



解决方法是

复制出现红色字体的路径。。。

File -  Settings  - schemas and DtDs 



点击加号。把路径考进去就可以了 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: