我们在开发使用android studio开发Framework时发现打开源码项目类和类之间无联系,代码不会自动联想,并且android sdk里的类和方法也无法自动联想并且没有错误提示。这样开发起来效率会很低。那能不能用AS开发android源码时和开发APP一样呢?答案是可以的~​

我们可以用android studio导入android.ipr的方法来开发Framework。​

获取android.ipr的步骤​

1、编译idegen模块,在aosp文件目录下执行​

make idegen​

如果整编过就不用再进行单编了。编译之前不要忘了source build/envsetup.sh和lunch。​

如果不了解编译流程的或者编译遇到问题可以看下我之前写的文章

Framework代码整编

Framework代码本地编译调试流程​

2、执行idegen脚本​

/development/tools/idegen/idegen.sh​

这一步可能有人会遇到错误,遇到错误可以试下​

./development/tools/idegen/idegen.sh​

我遇到的问题是在执行脚本时候提示我没有权限。然后我就在命令前加了个sudo,加完后又报了函数找不到的错。后来发现没有权限的提示忽略就行了,虽然报了没有权限但是脚本还在正常执行着,不要在命令前面加sudo。​

执行完脚本后我们会在源码根目录下看到android.ipr和android.iml这两个文件​

3、用androidstudio打开android.ipr​

打开之后你就可以像开发app一样编写你的代码了。如果嫌每次打开ipr项目时候太慢可以修改下android.iml这个文件

4、修改android.iml文件提升源码打开的速度

打开android.iml文件后发现有很多跟你开发不相关的模块,把不相关的删掉即可。

​​

更多推荐

使用AndroidStudio开发Framework​