Android开发—引入开源项目(gradle)

来源:互联网 发布:ubuntu安装pptp 编辑:程序博客网 时间:2024/05/22 11:39

先分享一个比较好的Android开源项目分类汇总链接:

https://github.com/Trinea/android-open-project

里面有很多值得学习的开源库,我今天是打算将其中菜单栏的开源库放到我的项目中;

其中碰到了许多问题,在这里记录一下。还有一篇比较详细介绍android中library的文章,也得好好看看:

http://www.vogella.com/tutorials/AndroidLibraryProjects/article.html


一,开源库CircularFloatingActionMenu

一个可定制的圆形的浮动菜单控件,类似于Path的圆形菜单。这个控件的可定制性更强,可以很容易的定制菜单出现消失时的动画,起始角度和半径。
项目地址:https://github.com/oguzbilgener/CircularFloatingActionMenu
Demo地址:https://github.com/oguzbilgener/CircularFloatingActionMenu/tree/master/samples

效果图:Renderings


二, eclipse中导入gradle项目库

gradle项目是用Android studio开发的,直接用eclipse打开是不能正常使用的。需要以下几个步骤:

(解决方案来自stackOverFlow的问题Importing gradle project to eclipse

1, 当然,首先是把项目下载到本地;

2, 打开Eclipse,import工程到eclipse中,还是与其他工程一样的方法;

3, 将java目录设置为"source",  你会发现该工程src目录下是空的,有一个java文件夹,这个就是android studio与eclipse的最大区别了。

所以,右键点击java文件夹,Build-Path->use as source folder. 同时,也可以把src文件夹删除了。

4, 右键点击项目,Android Tools->Add support library, 这样做主要是引入了android-support-v4.jar文件到libs路径下

我一开始确实这样做了,但是似乎这一步不做也可以,我后来又把这个jar给删了,也没事。

5, 最后,如果这是一个library的话,右键项目,properties->Android->Is library. 

OK


三, 将开源库导入自己项目中

这一步碰到好多问题,折腾了一早上,先把这些问题理一理

1, android.content.res.Resources$NotFoundException: Resource ID #0x7f030000 type #0x3 is not valid

这个问题是说Resource ID无效,而这个错误正是我引入的lib库里的。编译器编译程序时可以找到的资源,但在运行时却找不到。

解决方法:clean project, 然后待重新编译好后,再将lib库加入项目中。

2, java.lang.NoClassDefFoundError: com.oguzdev.circularfloatingactionmenu.library.R$dimen

这个也是lib库中的错误,找不到资源中定义的对象。出现这个问题,我就发现我导入library的方法有问题了;

一开始,我直接将library项目bin文件中的jar文件拷贝到libs中,并在Properties-->java build path 使用add jars添加

于是,找了一些资料,发现Android Developers中有相关的说明:

http://developer.android.com/tools/projects/projects-eclipse.html#SettingUpLibraryProject

说明也很简单,只要打开Properties-->Android-->add library即可,但是要注意多个library引入后的先后顺序,即依赖关系。

于是把libs中jar删除,按照上面的操作,就完成了导入library。


3, 中间还碰到一些比较奇怪的问题,重启eclipse解决。


最后,在自己的项目中第一次引入了开源库,晒个图





0 0
原创粉丝点击