网上有很多开源项目的用法,但是偏偏都省略了“导入”这个过程,因为太“简单”了,但是对于萌新来说这些一点都不简单。今天,我就以Github上的SmartImageView为例,给大家带来详细的导入过程。当然,这个项目没有给出可以让我们compile的依赖库。想要使用依赖库的朋友可以访问:
http://mvnrepository.com/artifact/com.github.snowdream.android/smartimageview/0.0.2
Android Studio导入Android Studio的过程,在网上大家可以找到,也基本正确。今天我主要给大家带来的是Android Studio导入Eclipse项目的过程。
1.上github下载我们要使用的开源项目zip包
2.我们把它解压出来,用AS的起始界面打开它。
3.等待AS自动grandle完毕,保存这个项目。
4.接下来的步骤跟网上其他AS导AS项目的步骤一样了。
file→new→import module打开导入界面,选择我们刚才保存的项目,module name可以随便取。
5.把这个module加入到依赖中
看起来似乎到此结束了。但是由于我们导入的是一个项目!一个项目!一个项目!所以我们还没有完结。
6.打开我们开源项目的gradle,apply必须从application改为library,并且applicationId也不需要,注释掉即可。
7.同样,由于是一个项目,打开开源项目的Manifest,删除掉开源项目注册的主活动,否则最终部署的时候会同时部署出两个App。。。。别问我怎么知道的。。。
8.还没完!如果你就这样编译的话,恭喜你,AS会报错。Error:Execution failed for task ':app:processDebugManifest'.
报错不用怕,报错是好事,至少你知道哪里可能有问题。最怕的是不报错,但功能却实现不了。。。
报错报了那么一大堆,其实是说你自己的Manifest和开源项目的Manifest的资源冲突了。我们打开自己的Manifest稍作修改即可。同时,本例使用SmartImageView,所以不要忘记添加联网权限。
9.这样我们就可以开心的使用SmartImageView了,是吗。添加完命名空间后,当我们开开心心的在布局里面设置SmartImageView的时候,我们输入了完整的包名,但是都快输完了,还没有见到提示(对比下面的ListView有提示出现)。作为萌新,我是很慌的,因为我知道错了,但是AS并不报错,也不给任何提示。
但神奇的是我敲完布局代码,它就是能用。。。。。关于原因希望有大神能指点一二。(个人感觉是命名空间的问题?)
随便写两行代码展示展示。
成功!我不得不感慨,这是我导入最麻烦最复杂的项目T T..
其他Eclipse项目的导入也基本类似,如果有更好的方法或者建议,欢迎大家留言。