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
效果图:
二, 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解决。
最后,在自己的项目中第一次引入了开源库,晒个图
- Android开发—引入开源项目(gradle)
- android studio 项目引入viewpagerindicator开源控件
- 引入Android项目时Gradle加载时间很长的解决办法之一(更新1)
- Kotlin 引入Android项目
- 使用Gradle发布Android开源项目到JCenter
- 使用Gradle发布Android开源项目到JCenter
- 使用Gradle发布Android开源项目到JCenter
- android gradle引入nexus中的jar包
- 使用Android Studio引入开源library出现Gradle sync failed: No service of type Factory<LoggingManagerInternal>
- android开发之使用gradle终端下build项目
- android开发项目中的build.gradle文件介绍
- Gradle构建Android项目
- Gradle打包android 项目
- android项目构建-gradle
- Gradle构建Android项目
- Gradle构建Android项目
- Gradle构建Android项目
- android引入开源项目方法,和解决android-support-v4.jar冲突问题
- 学习C++——const的用法
- 进程调度和进程时间
- CF24D 概率DP
- java简单工厂模式
- 中国最大机器人展将在天津举办
- Android开发—引入开源项目(gradle)
- 前端开发者的梦话
- cocos2dx3.2开发 RPG《Flighting》(十四)暂停按钮
- xcode新特性extensions(原文 iOS by tutorials)
- 2015年或将成为个人专用机器人爆发年
- Ubuntu下修改主机名称
- 说说公交那点事
- 【.NET】为什么要记录日志?
- JS 一个函数处理多个事件