(本文内容同样适用于Google新推出的Android Studio)
以前开发Android一直用的是Eclipse。虽然从很多方面来讲,Eclipse都是一款不错的IDE,对java、Android以及其他一些开发需求的支持上都很好,但巨大的资源占用,缓慢的启动过程(特别是加载Android相关插件和sdk),时不时的crash一下,很难让人对其产生好感。直到后来了解并试用了Intellij IDEA,才不得不感概:这才是我要找的IDE。难怪网上都称之为“神器”。IDEA的社区版(也就是CE)版是免费的,基本上日常开发的功能都有。最新的版本是13,虽然以前的版本对Android对支持不是很完善(毕竟不是google官方支持的),但最新的版本已经很不错了,和Eclipse比起来有过之而无不及,开发调试都没有问题。
之前用Eclipse的时候,会把Android源代码也导入到里面,有Android源代码在手,对开发、调试都有很大的帮助。Eclipse导入Android源代码很方便,一个重要原因在于Android源代码里提供了Eclipse的.classpath文件(位置在$Android_SRC/development/ide/Eclipse/.classpath),把大部分Android的java代码都放进去了。不过IDEA就没这么幸运了,Android没提供idea的相关配置,虽然有个intellij的文件夹,但里面的东西似乎没有用,而很久没更新过了。所以若想把Android代码导入IDEA,似乎只能手工操作,太麻烦了,而且也不符合我们coder“用code来解决问题”的理念。
所以我分析了一下IDEA的module文件(module相当于一个project里的sub project),发现虽然和.classpath格式不同的,但大部分需要的信息在.classpath里都能找到,所以完全可以将.classpath文件转成IDEA需要的iml文件。
这件事,一个XSLT就可以搞定。
XSLT文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
导入步骤
有了上面的xslt,把Android源代码导入IDEA就很容易了
- 找一个支持xslt转换的工具(很多,如果嫌麻烦可以用我写的这个简单的python脚本)
- 用上面的xslt将Android的.classpath文件($Android_SRC/development/ide/Eclipse/.classpath)转成iml文件,再将生成的文件保存到Android源代码到根目录(一定得是根目录,文件名字可以随便取,只要扩展名是.iml就可以)
- 在IDEA里,通过”import moudle”将刚才保存的.iml文件导入到进去,就可以在IDEA看到Android的Java代码了(见下图)
导入以后,无论是直接查看代码还是调试跟入,都没有问题
附Python XSLT转换脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |