转:http://blog.csdn.net/laihuan99/article/details/9054985

很多新手朋友朋友在Github搜索开源项目时,有时候不明白怎么导入eclipse。的确,有的时候那些项目只有源码,要自己打包JAR或连接Library使用,新手朋友是摸不到头脑的。我简单的归纳如下:

第一类:直接项目

这类是最简单的。你一看就知道是个android项目源码。 例子:看雪论坛https://github.com/kanxue-team/kanxue-android-app 操作:你可直接下载,解压,直接Import进eclipse就可编译运行了。

第二类:Library和演示代码合体

这类一般是某小组件的项目源码(结构如图1),在文件列表中,一般可看到两个文件夹,一个是Library,一个是demo。其中Library是组件项目的源代码,而demo只是一个简单的演示使用组件的代码。

例子:pulltorefresh组件 https://github.com/johannilsson/android-pulltorefresh 图1 操作: ①我们以pulltorefresh为例子,你可直接下载,解压至一个目录如“E:…/ android-pulltorefresh-master”,如图1可可知,pulltorefresh为Library,而pulltorefreshexample为演示demo。

②Eclipse导入android-pulltorefresh-master目录,注意导入此目录时,会显示导入两个项目pulltorefresh和pulltorefreshexample,我们两个都要勾选导入。

③设定pulltorefresh为 Library。右击pulltorefresh项目点击Properties-->点击左侧框内的”android”-->右下界面点击选中“Is Library”复选框-->点OK完成。 ④pulltorefreshexample项目导入Library。在pulltorefreshexample项目下打开与AndroidManifest.xml同一目录下的project.properties文件。 添加一行:android.library.reference.1=../pulltorefresh/ 其是指定一个要引用的library的目录,可用绝对和相对路径,此例中“..”代表当前目录的上一级(既E:…/ android-pulltorefresh-master目录),“../pulltorefresh/”既我们的pulltorefresh项目的目录了。

第三类:打包jar文件使用

这类一般是某小组件的项目源码,在文件列表中,一般只有项目的源代码,没有演示代码(使用在说明文档)或演示代码不能直接使用。我们需要把源代码自己打包成jar文件,供我们项目使用。(另一种很好的方案是library,在你项目如第二类第四步那样直接引用此源代码)

例子:async-http组件https://github.com/loopj/android-async-http 操作:

①你可直接下载,解压,直接Import进eclipse。但注意你是不能运行的。 看到project.properties文件里的“android.library=true”了吗,它就是个library。

②打包jar。可以在eclipse的File->Export->Java->JAR file里打出jar文件。弹出的对话框设置如下:

只需选src和assets文件夹,由侧配置文件不选。输出文件修改JAR file即可。点Finish完成。

③你的项目导入jar包。直接把生成的library.jar放入“libs”,注意在此目录的JAR,elipse会自动配置,“libs”目录名不可更改,否则需手动配置。

Github安卓开源项目编译运行的更多相关文章

  1. github优秀开源项目大全-iOS

    github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...

  2. 如何在github下载开源项目到本地(Coding iOS 客户端为例)

    一.前言 以 Coding iOS 客户端 为例讲解如何在github下载开源项目到本地 github地址:https://github.com/Coding/Coding-iOS 二.分析 根据项目 ...

  3. 参与github上开源项目的大致流程和注意事项

    Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...

  4. 使用maven编译dubbo,导入eclipse(其他maven开源项目编译类似)

    dubbo github下载地址:https://github.com/alibaba/dubbo 相关文档:http://dubbo.io/ 使用maven编译dubbo,导入eclipse(其他m ...

  5. OpenDigg安卓开源项目月报201704

    由OpenDigg 出品的安卓开源项目月报第一期来啦.我们的安卓开源月报集合了OpenDigg一个月来新收录的优质安卓开源项目,方便安卓开发人员便捷的找到自己需要的项目工具. DiscreteScro ...

  6. qt 旧项目编译运行提示 “启动程序失败,路径或者权限错误?” 原因及解决方法

    qt 旧项目编译运行提示 "启动程序失败,路径或者权限错误?" 原因及解决方法 原因 Qt Creator在打开项目文件的同时会生成.pro.user文件,.pro.user文件叫 ...

  7. GitHub Android 开源项目汇总 (转)

    转自:http://blog.csdn.net/ithomer/article/details/8882236 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上.基于 ...

  8. React Native开源项目如何运行(转载)

    学习任何技术,最快捷的方法就是学习完基础语法,然后模仿开源项目进行学习,React Native也不例外.React Native推出了1年多了, 开源项目太多了,我们以其中一个举例子.给大家演示下如 ...

  9. Android github上开源项目、酷炫的交互动画和视觉效果地址集合

    Android上开源的酷炫的交互动画和视觉效果:http://blog.csdn.net/u013278099/article/details/50323689 Awesome-android-ui: ...

随机推荐

  1. Linux下如何查看系统启动时间和运行时间(转)

    1.uptime命令输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.00 2.查看/proc/uptime文件计算 ...

  2. 在AngularJS中实现一个延迟加载的Directive

    所谓的延迟加载通常是:直到用户交互时才加载.如何实现延迟加载呢? 需要搞清楚三个方面: 1.html元素的哪个属性需要延迟加载?2.需要对数据源的哪个字段进行延迟加载?3.通过什么事件来触发延迟加载? ...

  3. Android的Databinding-自定义生成类名字

    1. 在xml中,添加class的属性并设置为自定义名字<data class="com.example.CustomBinding"></data>2. ...

  4. Error-MVC:HTTP Error 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效。

    ylbtech-Error-MVC:HTTP Error 500.19 - Internal Server Error  无法访问请求的页面,因为该页的相关配置数据无效. 1.返回顶部 1. IIS ...

  5. 【OpenCV学习】计算两幅图像的重叠区域

    问题描述:已知两幅图像Image1和Image2,计算出两幅图像的重叠区域,并在Image1和Image2标识出重叠区域. 算法思想: 若两幅图像存在重叠区域,则进行图像匹配后,会得到一张完整的全景图 ...

  6. centos清除dns cache.

    # /etc/init.d/nscd restart # service nscd restart # service nscd reload # nscd -i hosts https://www. ...

  7. linux 使用ifstat查看网络使用情况

    首先安装ifstat wget http://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz tar xzvf ifstat-1.1.tar.gz cd ...

  8. pid 控制算法

    http://blog.csdn.net/huangkangying/article/details/78129148 https://zh.wikipedia.org/wiki/PID%E6%8E% ...

  9. V8 下的垃圾回收机制

    V8 实现了准确式 GC,GC 算法采用了分代式垃圾回收机制.因此,V8 将内存(堆)分为新生代和老生代两部分. 1.新生代算法 新生代中的对象一般存活时间较短,使用 Scavenge GC 算法. ...

  10. python3用BeautifulSoup用字典的方法抓取a标签内的数据

    # -*- coding:utf-8 -*- #python 2.7 #XiaoDeng #http://tieba.baidu.com/p/2460150866 #标签操作 from bs4 imp ...