Ubuntu12.04下Android Studio导入Android源码

开始之前,先要准备一份已经编译过的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" />
<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 


点击加号。把路径考进去就可以了 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值