Android开源工具库

513928815 8年前
   <h2><strong>一、依赖注入DI</strong></h2>    <p>通过依赖注入减少View、服务、资源简化初始化,事件绑定等重复繁琐工作</p>    <p>1. AndroidAnnotations(Code Diet) android快速开发框架</p>    <p>项目地址: <a href="/misc/goto?guid=4958533801214880182" rel="nofollow,noindex">https://github.com/excilys/androidannotations</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549996210515754" rel="nofollow,noindex">https://github.com/excilys/androidannotations/wiki</a></p>    <p>官方网站: <a href="/misc/goto?guid=4958822865200979980" rel="nofollow,noindex">http://androidannotations.org/</a></p>    <p>特点:(1)依赖注入:包括view,extras,系统服务,资源等等</p>    <p>(2)简单的线程模型,通过annotation表示方法运行在ui线程还是后台线程</p>    <p>(3)事件绑定:通过annotation表示view的响应事件,不用在写内部类</p>    <p>(4)REST客户端:定义客户端接口,自动生成REST请求的实现</p>    <p>(5)没有你想象的复杂:AndroidAnnotations只是在在编译时生成相应子类</p>    <p>(6)不影响应用性能:仅50kb,在编译时完成,不会对运行时有性能影响。</p>    <p>PS:与roboguice的比较:roboguice通过运行时读取annotations进行反射,所以可能影响应用性能,而AndroidAnnotations在编译时生成子类,所以对性能没有影响</p>    <p>2. roboguice 帮你处理了很多代码异常,利用annotation使得更少的代码完成项目</p>    <p>项目地址: <a href="/misc/goto?guid=4958822865293721224" rel="nofollow,noindex">https://github.com/roboguice/roboguice</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549996351587112" rel="nofollow,noindex">https://github.com/roboguice/roboguice/wiki</a></p>    <p>3. butterknife 利用annotation帮你快速完成View的初始化,减少代码</p>    <p>项目地址: <a href="/misc/goto?guid=4958961775931067718" rel="nofollow,noindex">https://github.com/JakeWharton/butterknife</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958873636818564987" rel="nofollow,noindex">http://jakewharton.github.io/butterknife/</a></p>    <p>4. Dagger 依赖注入,适用于Android和Java</p>    <p>项目地址: <a href="/misc/goto?guid=4958864078712375065" rel="nofollow,noindex">https://github.com/square/dagger</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958860111330644982" rel="nofollow,noindex">http://square.github.io/dagger/</a></p>    <h2><strong>二、图片缓存</strong></h2>    <p>1. Android-Universal-Image-Loader 图片缓存</p>    <p>目前使用最广泛的图片缓存,支持主流图片缓存的绝大多数特性。</p>    <p>项目地址: <a href="/misc/goto?guid=4958532889178784950" rel="nofollow,noindex">https://github.com/nostra13/Android-Universal-Image-Loader</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549996758689403" rel="nofollow,noindex">https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549996836990341" rel="nofollow,noindex">http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html</a></p>    <p>2. picasso square开源的图片缓存</p>    <p>项目地址: <a href="/misc/goto?guid=4958972548258164558" rel="nofollow,noindex">https://github.com/square/picasso</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958860113958143127" rel="nofollow,noindex">http://square.github.io/picasso/</a></p>    <p>特点:(1)可以自动检测adapter的重用并取消之前的下载</p>    <p>(2)图片变换</p>    <p>(3)可以加载本地资源</p>    <p>(4)可以设置占位资源</p>    <p>(5)支持debug模式</p>    <p>3. ImageCache 图片缓存,包含内存和Sdcard缓存</p>    <p>项目地址: <a href="/misc/goto?guid=4959547545262053429" rel="nofollow,noindex">https://github.com/Trinea/AndroidCommon</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959548098635375204" rel="nofollow,noindex">https://github.com/Trinea/TrineaDownload/blob/master/TrineaAndroidDemo.apk?raw=true</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959548099397581156" rel="nofollow,noindex">http://www.trinea.cn/?p=704</a></p>    <p>特点:(1)支持预取新图片,支持等待队列</p>    <p>(2)包含二级缓存,可自定义文件名保存规则</p>    <p>(3)可选择多种缓存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13种)或自定义缓存算法</p>    <p>(4)可方便的保存及初始化恢复数据</p>    <p>(5)支持不同类型网络处理</p>    <p>(6)可根据系统配置初始化缓存等</p>    <h2><strong>三、网络相关</strong></h2>    <p>1. Asynchronous Http Client for Android Android异步Http请求</p>    <p>项目地址: <a href="/misc/goto?guid=4958988891673756696" rel="nofollow,noindex">https://github.com/loopj/android-async-http</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959548977325921618" rel="nofollow,noindex">http://loopj.com/android-async-http/</a></p>    <p>特点:(1) 在匿名回调中处理请求结果</p>    <p>(2) 在UI线程外进行http请求</p>    <p>(3) 文件断点上传</p>    <p>(4) 智能重试</p>    <p>(5) 默认gzip压缩</p>    <p>(6) 支持解析成Json格式</p>    <p>(7) 可将Cookies持久化到SharedPreferences</p>    <p>2. android-query 异步加载,更少代码完成Android加载</p>    <p>项目地址: <a href="/misc/goto?guid=4959549937591568729" rel="nofollow,noindex">https://github.com/androidquery/androidquery</a> 或 <a href="/misc/goto?guid=4959549997147118036" rel="nofollow,noindex">https://code.google.com/p/android-query/</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549997227458074" rel="nofollow,noindex">https://code.google.com/p/android-query/#Why_AQuery</a> ?</p>    <p>Demo地址: <a href="/misc/goto?guid=4959549997309838891" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=com.androidquery</a></p>    <p>特点: <a href="/misc/goto?guid=4959549997227458074" rel="nofollow,noindex">https://code.google.com/p/android-query/#Why_AQuery</a> ?</p>    <p>3. Async Http Client Java异步Http请求</p>    <p>项目地址: <a href="/misc/goto?guid=4958879031274401655" rel="nofollow,noindex">https://github.com/AsyncHttpClient/async-http-client</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549997426832825" rel="nofollow,noindex">http://sonatype.github.io/async-http-client/</a></p>    <p>4. Ion 支持图片、json、http post等异步请求</p>    <p>项目地址: <a href="/misc/goto?guid=4958867210913400317" rel="nofollow,noindex">https://github.com/koush/ion</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549997542116999" rel="nofollow,noindex">https://github.com/koush/ion#more-examples</a></p>    <p>5. HttpCache Http缓存</p>    <p>项目地址: <a href="/misc/goto?guid=4959547545262053429" rel="nofollow,noindex">https://github.com/Trinea/AndroidCommon</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959548098635375204" rel="nofollow,noindex">https://github.com/Trinea/TrineaDownload/blob/master/TrineaAndroidDemo.apk?raw=true</a></p>    <p>Demo代码: <a href="/misc/goto?guid=4959549997633295792" rel="nofollow,noindex">https://github.com/Trinea/AndroidDemo/blob/master/src/cn/trinea/android/demo/HttpCacheDemo.java</a></p>    <p>特点是:(1) 根据cache-control、expires缓存http请求</p>    <p>(2) 支持同步、异步Http请求</p>    <p>(3) 在匿名回调中处理请求结果</p>    <p>(4) 在UI线程外进行http请求</p>    <p>(5) 默认gzip压缩</p>    <p>6. Http Request</p>    <p>项目地址: <a href="/misc/goto?guid=4959549997717194142" rel="nofollow,noindex">https://github.com/kevinsawicki/http-request</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549997789923448" rel="nofollow,noindex">https://github.com/kevinsawicki/http-request#examples</a></p>    <p>7. okhttp square开源的http工具类</p>    <p>项目地址: <a href="/misc/goto?guid=4958964956476581901" rel="nofollow,noindex">https://github.com/square/okhttp</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958860115824511695" rel="nofollow,noindex">http://square.github.io/okhttp/</a></p>    <p>特点:(1) 支持SPDY( <a href="/misc/goto?guid=4959549997934718700" rel="nofollow,noindex">http://zh.wikipedia.org/wiki/SPDY)</a>协议。SPDY协议是Google开发的基于传输控制协议的应用层协议,通过压缩,多路复用(一个TCP链接传送网页和图片等资源 )和优先级来缩短加载时间。</p>    <p>(2) 如果SPDY不可用,利用连接池减少请求延迟</p>    <p>(3) Gzip压缩</p>    <p>(4) Response缓存减少不必要的请求</p>    <p>8. Retrofit RESTFUL API设计</p>    <p>项目地址: <a href="/misc/goto?guid=4958964956869128717" rel="nofollow,noindex">https://github.com/square/retrofit</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958837204152834453" rel="nofollow,noindex">http://square.github.io/retrofit/</a></p>    <h2><strong>四、数据库 orm工具包</strong></h2>    <p>orm的db工具类,简化建表、查询、更新、插入、事务、索引的操作</p>    <p>1. greenDAO Android Sqlite orm的db工具类</p>    <p>项目地址: <a href="/misc/goto?guid=4958848077537610631" rel="nofollow,noindex">https://github.com/greenrobot/greenDAO</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958848077650215272" rel="nofollow,noindex">http://greendao-orm.com/documentation/</a></p>    <p>官方网站: <a href="/misc/goto?guid=4958848077182994447" rel="nofollow,noindex">http://greendao-orm.com/</a></p>    <p>特点:(1)性能佳</p>    <p>(2) 简单易用的API</p>    <p>(3) 内存小好小</p>    <p>(4) 库大小小</p>    <p>2. ActiveAndroid Android Sqlite orm的db工具类</p>    <p>项目地址: <a href="/misc/goto?guid=4958848077977270223" rel="nofollow,noindex">https://github.com/pardom/ActiveAndroid</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549998196423807" rel="nofollow,noindex">https://github.com/pardom/ActiveAndroid/wiki/_pages</a></p>    <p>3. Sprinkles Android Sqlite orm的db工具类</p>    <p>项目地址: <a href="/misc/goto?guid=4959549998268273834" rel="nofollow,noindex">https://github.com/emilsjolander/sprinkles</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549998348282119" rel="nofollow,noindex">http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/</a></p>    <p>特点:比较显著的特点就是配合 <a href="/misc/goto?guid=4958964956869128717" rel="nofollow,noindex">https://github.com/square/retrofit</a> 能保存从服务器获取的数据</p>    <h2><strong>五、Android公共库</strong></h2>    <p>1. Guava Google的基于java1.6的类库集合的扩展项目</p>    <p>包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 这些高质量的API可以使你的JAVa代码更加优雅,更加简洁</p>    <p>项目地址: <a href="/misc/goto?guid=4958835396856351731" rel="nofollow,noindex">https://code.google.com/p/guava-libraries/</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549998474017354" rel="nofollow,noindex">https://code.google.com/p/guava-libraries/wiki/GuavaExplained</a></p>    <p>2. AndroidCommon Android公共库</p>    <p>项目地址: <a href="/misc/goto?guid=4959547545262053429" rel="nofollow,noindex">https://github.com/Trinea/AndroidCommon</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959548098635375204" rel="nofollow,noindex">https://github.com/Trinea/TrineaDownload/blob/master/TrineaAndroidDemo.apk?raw=true</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549998577340080" rel="nofollow,noindex">http://www.trinea.cn/?p=778</a></p>    <p>包括:(1)缓存(图片缓存、预取缓存、网络缓存)</p>    <p>(2) 公共View(下拉及底部加载更多ListView、底部加载更多ScrollView、滑动一页Gallery)</p>    <p>(3) Android常用工具类(网络、下载、Android资源操作、shell、文件、Json、随机数、Collection等等)</p>    <h2><strong>六、Android 高版本向低版本兼容</strong></h2>    <p>1. ActionBarSherlock 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题</p>    <p>项目地址: <a href="/misc/goto?guid=4958347420770236790" rel="nofollow,noindex">https://github.com/JakeWharton/ActionBarSherlock</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549998679835721" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos</a></p>    <p>APP示例:太多了。。现在连google都在用</p>    <p>2. Nine Old Androids 将Android 3.0(Honeycomb)所有动画API(ObjectAnimator ValueAnimator等)兼容到Android1.0</p>    <p>项目地址: <a href="/misc/goto?guid=4958532889080028088" rel="nofollow,noindex">https://github.com/JakeWharton/NineOldAndroids</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549937166624997" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958532884681591501" rel="nofollow,noindex">http://nineoldandroids.com/</a></p>    <p>3. HoloEverywhere 将Android 3.0的Holo主题兼容到Android2.1++</p>    <p>项目地址: <a href="/misc/goto?guid=4958988897879667402" rel="nofollow,noindex">https://github.com/Prototik/HoloEverywhere</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549998874957326" rel="nofollow,noindex">https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4958323912510903794" rel="nofollow,noindex">http://android-developers.blogspot.com/2012/01/holo-everywhere.html</a></p>    <h2><strong>七、多媒体相关</strong></h2>    <p>1. cocos2d-x 跨平台的2d游戏框架,支持Android、IOS、Linux、Windows等众多平台</p>    <p>项目地址: <a href="/misc/goto?guid=4958861985901239032" rel="nofollow,noindex">https://github.com/cocos2d/cocos2d-x</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549999012681785" rel="nofollow,noindex">http://www.cocos2d-x.org/wiki</a></p>    <p>官方网站: <a href="/misc/goto?guid=4958329674997436949" rel="nofollow,noindex">http://www.cocos2d-x.org/</a></p>    <p>2. Vitamio 是一款Android与iOS平台上的全能多媒体开发框架</p>    <p>项目地址: <a href="/misc/goto?guid=4958988897656322545" rel="nofollow,noindex">https://github.com/yixia/VitamioBundle</a></p>    <p>网站介绍: <a href="/misc/goto?guid=4959549999151141086" rel="nofollow,noindex">http://www.vitamio.org/docs/</a></p>    <p>特点:(1) 全面支持硬件解码与GPU渲染</p>    <p>(2) 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频</p>    <p>(3) 在Android与iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常见的多种视频流媒体协议,包括点播与直播。</p>    <p>3. PhotoProcessing 利用ndk处理图片库,支持Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate、Flip</p>    <p>项目地址: <a href="/misc/goto?guid=4959549999227311064" rel="nofollow,noindex">https://github.com/lightbox/PhotoProcessing</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549999306282440" rel="nofollow,noindex">https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true</a></p>    <p>4. Android StackBlur 图片模糊效果工具类</p>    <p>项目地址: <a href="/misc/goto?guid=4959549999391176870" rel="nofollow,noindex">https://github.com/kikoso/android-stackblur</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549999473032153" rel="nofollow,noindex">https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959549999548919396" rel="nofollow,noindex">https://github.com/kikoso/android-stackblur#usage</a></p>    <h2><strong>八、其他</strong></h2>    <p>1. Salvage view 带View缓存的Viewpager PagerAdapter,很方便使用</p>    <p>项目地址: <a href="/misc/goto?guid=4959549999632294786" rel="nofollow,noindex">https://github.com/JakeWharton/salvage</a></p>    <p>2. Android-PasscodeLock 应用锁,每次启动或从任何Activity启动应用都需要输入四位数字的密码方可进入</p>    <p>项目地址: <a href="/misc/goto?guid=4959549999712369478" rel="nofollow,noindex">https://github.com/wordpress-mobile/Android-PasscodeLock</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549999790742711" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=com.sothree.umano</a></p>    <p>APP示例:Wordpress Android,支付宝,挖财</p>    <p>3. android-lockpattern Android的图案密码解锁</p>    <p>项目地址: <a href="/misc/goto?guid=4959548978350958491" rel="nofollow,noindex">https://code.google.com/p/android-lockpattern/</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959549999901132527" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo</a></p>    <p>使用介绍: <a href="/misc/goto?guid=4959549999980018779" rel="nofollow,noindex">https://code.google.com/p/android-lockpattern/wiki/QuickUse</a></p>    <p>示例APP:Android开机的图案密码解锁,支付宝的密码解锁</p>    <p>4. GlowPadBackport将Android4.2的锁屏界面解锁扩展到Android1.6及1.6+</p>    <p>项目地址: <a href="/misc/goto?guid=4959550000056709095" rel="nofollow,noindex">https://github.com/rock3r/GlowPadBackport</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959550000133612762" rel="nofollow,noindex">https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample</a></p>    <p>效果图: <a href="/misc/goto?guid=4959550000218110861" rel="nofollow,noindex">https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw</a></p>    <p>5. GlowPadView Android4锁屏界面解锁</p>    <p>项目地址: <a href="/misc/goto?guid=4959550000293502067" rel="nofollow,noindex">https://github.com/nadavfima/GlowPadView</a></p>    <p>效果图: <a href="/misc/goto?guid=4959550000380081055" rel="nofollow,noindex">https://raw.github.com/nadavfima/GlowPadView/master/example.png</a></p>    <p>6. Android Priority Job Queue Android后台任务队列</p>    <p>项目地址: <a href="/misc/goto?guid=4959550000460006355" rel="nofollow,noindex">https://github.com/path/android-priority-jobqueue</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959550000537313507" rel="nofollow,noindex">https://github.com/path/android-priority-jobqueue#getting-started</a></p>    <p>7. jsoup 一个解析html的java库,可方便的提取和操作数据</p>    <p>项目地址: <a href="/misc/goto?guid=4958874642818682344" rel="nofollow,noindex">https://github.com/jhy/jsoup</a></p>    <p>官方网站: <a href="/misc/goto?guid=4958341688785985080" rel="nofollow,noindex">http://jsoup.org/</a></p>    <p>作用:(1) 从一个url、文件或string获得html并解析</p>    <p>(2) 利用dom遍历或css选择器查找、提取数据</p>    <p>(3) 操作html元素</p>    <p>(4) 根据白名单去除用于提交的非法数据防止xss攻击</p>    <p>(5) 输出整齐的html</p>    <p>8.ZIP java压缩和解压库</p>    <p>项目地址: <a href="/misc/goto?guid=4958317032356814320" rel="nofollow,noindex">https://github.com/zeroturnaround/zt-zip</a></p>    <p>文档介绍: <a href="/misc/goto?guid=4959550000707427015" rel="nofollow,noindex">https://github.com/zeroturnaround/zt-zip#exa</a> <a href="/misc/goto?guid=4959550000707427015" rel="nofollow,noindex">mples</a></p>    <p>作用:(1) 解压和压缩,并支持文件夹内递归操作</p>    <p>(2) 支持包含和排除某些元素</p>    <p>(3) 支持重命名元素</p>    <p>(4) 支持遍历zip包内容</p>    <p>(5) 比较两个zip包等功能</p>    <p>9. Cobub Razor 开源的mobile行为分析系统,包括web端、android端,支持ios和window phone</p>    <p>项目地址: <a href="/misc/goto?guid=4959550000778076739" rel="nofollow,noindex">https://github.com/cobub/razor</a></p>    <p>Demo地址: <a href="/misc/goto?guid=4959550000860278896" rel="nofollow,noindex">http://demo.cobub.com/razor</a></p>    <p>网站介绍: <a href="/misc/goto?guid=4959550000955780695" rel="nofollow,noindex">http://dev.cobub.com/</a></p>    <p>10. aFileChooser 文件选择器,可内嵌到程序中,而无需使用系统或三方文件选择器。</p>    <p>项目地址: <a href="/misc/goto?guid=4959549509990319996" rel="nofollow,noindex">https://github.com/iPaulPro/aFileChooser</a></p>    <p>11. androidpn 基于xmpp协议的消息推送解决方案,包括服务器端和android端。</p>    <p>项目地址: <a href="/misc/goto?guid=4959550001064785160" rel="nofollow,noindex">https://github.com/dannytiehui/androidpn</a></p>    <p>12. Android插件式开发</p>    <p>项目地址: <a href="/misc/goto?guid=4959550001143862402" rel="nofollow,noindex">https://github.com/umeng/apf</a></p>    <p>来自:http://www.trinea.cn/android/android-github-dev-lib/</p>    <p> </p>    <p>来自:http://www.androidchina.net/5636.html</p>    <p> </p>