Android 開源項目分類彙總(轉)

Android 開源項目分類彙總(轉)

## 第一部分 個性化控件(View)
主要介紹那些不錯個性化的 View,包括 ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style 等等。  

#### 1、ListView
1. android-pulltorefresh  
一個強大的拉動刷新開源項目,支持各類控件下拉刷新,ListView、ViewPager、WebView、ExpandableListView、GridView、ScrollView、Horizontal  ScrollView、Fragment 上下左右拉動刷新,比下面 johannilsson 那個只支持 ListView 的強大的多。而且它實現的下拉刷新 ListView 在 item 不足一屏狀況下也不會顯示刷新提示,體驗更好。  
項目地址:https://github.com/chrisbanes/Android-PullToRefresh  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true  
APP 示例:新浪微博各個頁面  

1. android-pulltorefresh-listview  
下拉刷新 ListView,這個被不少人使用的項目實際有很多 bug,推薦使用 [android-Ultra-Pull-to-Refresh](https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh)  
項目地址:https://github.com/johannilsson/android-pulltorefresh  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true  

1. android-Ultra-Pull-to-Refresh  
下拉刷新,第一個項目已經中止維護了,而且使用起來相對複雜,定製性也差。這個是替代和改良方案。這個繼承於 ViewGroup 能夠包含任何 View。功能甚至比 SwipeRefreshLayout 強大。使用起來很是簡單。良好的設計,若是你想定製本身的 UI 樣式,很是簡單,就像給 ListView 加一個 Header View 那麼簡單。支持 `API LEVEL >= 8`  
項目地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh  
原理剖析文檔:[android-Ultra-Pull-to-Refresh](http://a.codekk.com/detail/Android/Grumoon/android-Ultra-Pull-To-Refresh 源碼解析)  
Demo 地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh/blob/master/ptr-demo/target/ultra-ptr-demo.apk?raw=true  
效果圖:![Renderings](http://srain-github.qiniudn.com/ultra-ptr/contains-all-of-views.gif)  
http://srain-github.qiniudn.com/ultra-ptr/release-to-refresh.gif  
http://srain-github.qiniudn.com/ultra-ptr/auto-refresh.gif  
http://srain-github.qiniudn.com/ultra-ptr/store-house-string-array.gif  

1. DragSortListView  
拖動排序的 ListView,同時支持 ListView 滑動 item 刪除,各個 Item 高度不1、單選、複選、CursorAdapter 作爲適配器、拖動背景變化等  
項目地址:https://github.com/bauerca/drag-sort-listview  
Demo 地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv  
APP 示例:Wordpress Android  

1. SwipeListView  
支持定義 ListView 左右滑動事件,支持左右滑動位移,支持定義動畫時間  
項目地址:https://github.com/47deg/android-swipelistview  
Demo 地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview  
APP 示例:微信

1. SlideAndDragListView  
支持ListView的Item的拖動排序、左右滑動事件,可自定義左右滑動顯示文字、圖標、位移,同時支持onItemClick、onItemLongClick等監聽器,提供豐富的回調接口。  
項目地址:https://github.com/yydcdut/SlideAndDragListView  
Demo 地址:https://github.com/yydcdut/SlideAndDragListView/blob/master/apk/sdlv.apk?raw=true  
APP 示例:Android 手機QQ 5.0  
效果圖:![Renderings](https://raw.githubusercontent.com/yydcdut/SlideAndDragListView/master/gif/v1.1.gif)  

1. Android-SwipeToDismiss  
滑動 Item 消失 ListView,支持 3.0 如下版本見:https://github.com/JakeWharton/SwipeToDismissNOA  
項目地址:https://github.com/romannurik/Android-SwipeToDismiss  
Demo 地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code  

1. RecyclerViewSwipeDismiss  
輕量級支持 support-v7 中的 RecyclerView 的滑動刪除(Swipe to dismiss)行爲,不須要修改源代碼,只要簡單的綁定`onTouchListener`  
項目地址:https://github.com/CodeFalling/RecyclerViewSwipeDismiss  
效果圖:![Renderings](https://raw.githubusercontent.com/CodeFalling/RecyclerViewSwipeDismiss/master/RecyclerViewSwipeDismiss.gif)  

1. PinnedHeaderExpandableListView  
首先它是一個 ExpandableListView,可是它的頭部能夠固定,其次,在它的上面還有一個頭部能夠來回伸縮  
項目地址:https://github.com/singwhatiwanna/PinnedHeaderExpandableListView  
效果圖:![Renderings](https://camo.githubusercontent.com/fa7f516b0b6e2921007a17cbc359b3f661f32226/687474703a2f2f696d672e626c6f672e6373646e2e6e65742f32303134303531313135313534363834333f77617465726d61726b2f322f746578742f6148523063446f764c324a736232637559334e6b626935755a58517663326c755a33646f5958527064324675626d453d2f666f6e742f3561364c354c32542f666f6e7473697a652f3430302f66696c6c2f49304a42516b46434d413d3d2f646973736f6c76652f37302f677261766974792f536f75746845617374)  
APP 示例:百度手機衛士垃圾清理界面  

1. StickyListHeaders  
GroupName 滑動到頂端時會固定不動直到另一個 GroupName 到達頂端的 ExpandListView,支持快速滑動,支持 Android2.3 及以上  
項目地址:https://github.com/emilsjolander/StickyListHeaders  
效果圖:![Renderings](https://raw.github.com/emilsjolander/StickyListHeaders/master/demo.gif)  
APP 示例:Android 4.0 聯繫人  

1. pinned-section-listview  
GroupName 滑動到頂端時會固定不動直到另一個 GroupName 到達頂端的 ExpandListView  
項目地址:https://github.com/beworker/pinned-section-listview  
效果圖:![Renderings](https://raw.github.com/beworker/pinned-section-listview/master/screen1.png)  

1. PinnedHeaderListView  
GroupName 滑動到頂端時會固定不動直到另一個 GroupName 到達頂端的 ExpandListView  
項目地址:https://github.com/JimiSmith/PinnedHeaderListView  

1. QuickReturn  
ListView/ScrollView 的 header 或 footer,當向下滾動時消失,向上滾動時出現  
項目地址:https://github.com/lawloretienne/QuickReturn  
Demo 地址:https://play.google.com/store/apps/details?id=com.etiennelawlor.quickreturn  

1. QuickReturnHeader  
ListView/ScrollView 的 header 或 footer,當向下滾動時消失,向上滾動時出現  
項目地址:https://github.com/ManuelPeinado/QuickReturnHeader  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true  
APP 示例:google plus  

1. IndexableListView  
ListView 右側會顯示 item 首字母快捷索引,點擊可快速滑動到某個 item  
項目地址:https://github.com/woozzu/IndexableListView  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true  
APP 示例:微信通信錄、小米聯繫人  

1. CustomFastScrollView  
ListView 快速滑動,同時屏幕中間 PopupWindows 顯示滑動到的 item 內容或首字母  
項目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo  
效果圖:![Renderings](https://raw.github.com/nolanlawson/CustomFastScrollViewDemo/master/example.png)  

1. Android-ScrollBarPanel  
ListView 滑動時固定的 Panel 指示顯示在 scrollbar 旁邊  
項目地址:https://github.com/rno/Android-ScrollBarPanel  
效果圖:![Renderings](https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png)  

1. SlideExpandableListView  
用戶點擊 listView item 滑出固定區域,其餘 item 的區域收縮  
項目地址:https://github.com/tjerkw/Android-SlideExpandableListView  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true  

1. JazzyListView  
ListView 及 GridView item 以特殊動畫效果進入屏幕,效果包括 grow、cards、curl、wave、flip、fly 等等  
項目地址:https://github.com/twotoasters/JazzyListView  
Demo 地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample  
在線演示:http://lab.hakim.se/scroll-effects/  

1. ListViewAnimations  
帶 Item 顯示動畫的 ListView,動畫包括底部飛入、其餘方向斜飛入、下層飛入、漸變消失、滑動刪除等  
項目地址:https://github.com/nhaarman/ListViewAnimations  
Demo 地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations  
APP 示例:Google plus、Google Now 卡片式進入、小米系統中應用商店、聯繫人、遊戲中心、音樂、文件管理器的 ListView、Ultimate、Light Flow Lite、TreinVerkeer、Running Coach、Pearl Jam Lyrics、Calorie Chart、Car Hire、Super BART、DK FlashCards、Counter Plus、Voorlees Verhaaltjes 2.0  

1. DevsmartLib-Android  
橫向 ListView  
項目地址:https://github.com/dinocore1/DevsmartLib-Android  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true  

1. TwoWayView  
橫向 ListView 的效果,繼承自 AdapterView  
項目地址:https://github.com/lucasr/twoway-view  

1. HorizontalVariableListView  
支持 Item 寬度不一致的 ListView  
項目地址:https://github.com/sephiroth74/HorizontalVariableListView  

1. LinearListView  
用 LinearLayout 實現的 ListView,可解決多個 ListView 並存等問題。目前本身也有須要,等親自嘗試事後會再具體介紹  
項目地址:https://github.com/frankiesardo/LinearListView  

1. MultiChoiceAdapter  
支持多選的 ListView Adapter  
項目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter  
Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo  

1. EnhancedListView  
支持橫向滑動刪除列表項以及撤銷刪除的 ListView,該項目的前身是[SwipeToDismissUndoList](https://github.com/timroes/SwipeToDismissUndoList)  
項目地址:https://github.com/timroes/EnhancedListView  
Demo 地址:https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo  

1. ListBuddies  
自動滾動的雙列 ListView ,兩個 ListView 滾動速度不一致,有視差效果  
項目地址:https://github.com/jpardogo/ListBuddies  
Demo 地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies  
效果圖:![Renderings](https://raw.github.com/jpardogo/ListBuddies/master/art/screenshot_listbuddies_2.png)  

1. SwipeMenuListView  
針對 ListView item 的側滑菜單  
項目地址:https://github.com/baoyongzhang/SwipeMenuListView  
效果圖:![Renderings](https://raw.githubusercontent.com/baoyongzhang/SwipeMenuListView/master/demo.gif)  
APP 示例:手機 QQV5.0  

1. PagingListView  
分頁加載的 ListView。當滑動到 ListView 底部最後一個元素時,顯示一個進度行,而後加載下一頁數據,並顯示。  
項目地址:https://github.com/nicolasjafelle/PagingListView  

1. PullZoomView  
支持下拉時 HeaderView 縮放的 ListView、ScrollView  
項目地址:https://github.com/Frank-Zhu/PullZoomView  
效果圖:![Renderings](https://raw.githubusercontent.com/Frank-Zhu/PullZoomView/master/art/pull-to-zoom.gif)  

1. PullToZoomInListView  
滑動 ListView 時使其 HeaderView 跟隨滑動縮放  
項目地址:https://github.com/matrixxun/PullToZoomInListView  
效果圖:![Renderings](https://github.com/matrixxun/PullToZoomInListView/raw/master/art/pull-to-zoom.gif)  

1. CalendarListview  
實現每月一行日曆效果的 ListView  
項目地址:https://github.com/traex/CalendarListview  
原理剖析文檔:[CalendarListview](http://a.codekk.com/detail/Android/Rogary/CalendarListView%20%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90)  
效果圖:![Renderings](https://github.com/traex/CalendarListview/raw/master/demo.gif)  

1. sticky-headers-recyclerview  
GroupName 滑動到頂端時會固定不動直到另一個 GroupName 到達頂端的 ListView,採用 support-v7 中的 RecyclerView 實現  
項目地址:https://github.com/timehop/sticky-headers-recyclerview  

1. PullSeparateListView  
到達頂部或底部繼續拉動時,實現 Item 間的相互分離,兩種模式:(1) 所有分離的模式,即屏幕內全部 Item 都會分離 (2)部分分離模式,以點擊位置爲分界點,部分 item 分離  
項目地址:https://github.com/chiemy/PullSeparateListView  
效果圖:![Renderings](https://github.com/chiemy/PullSeparateListView/raw/master/capture.gif)  

1. ExpandableLayout  
Header 和 Content Item 均可以展開的 ExpandableListview  
項目地址:https://github.com/traex/ExpandableLayout  

1. PagedHeadListView  
支持 paginated header 以及 material page indicator 的 ListView.  
項目地址:https://github.com/JorgeCastilloPrz/PagedHeadListView  
效果圖:![Renderings](https://raw.githubusercontent.com/JorgeCastilloPrz/PagedHeadListView/master/app/src/main/res/raw/preview1.gif)  

1. CustomSwipeListView  
支持左滑彈出自定義菜單,右滑刪除且容許撤銷,同時能夠自定義滑動動畫時間和滑動觸發事件的時機等。  
項目地址:https://github.com/xyczero/Android-CustomSwipeListView  
Demo 地址:[Download here](http://7u2jsw.com1.z0.glb.clouddn.com/githubCustomSwipeListView.apk)  
效果圖:![Renderings](http://7u2jsw.com1.z0.glb.clouddn.com/githubCustomSwipeListview_Set.PNG)  

1. Pull-to-Refresh.Rentals-Android  
提供一個簡單能夠自定義的下拉刷新實現,[Yalantis](http://yalantis.com/) 出品。  
項目地址:https://github.com/Yalantis/Pull-to-Refresh.Rentals-Android  
效果圖:![Renderings](https://camo.githubusercontent.com/d406ac5a03a2b1fa5cf41fadc8d2408cb8709bdc/68747470733a2f2f6431337961637572716a676172612e636c6f756466726f6e742e6e65742f75736572732f3132353035362f73637265656e73686f74732f313635303331372f7265616c6573746174652d70756c6c5f312d322d332e676966)  

1. ScrollerCalendar  
實現每行顯示一年的 12 個月份的 RecyclerView 年曆  
項目地址:https://github.com/guanchao/ScrollerCalendar  
效果圖:![Renderings](https://raw.githubusercontent.com/guanchao/ScrollerCalendar/master/images/sample2.gif)  

1. ExtractWordView  
一個能夠提取單詞的 ListView,支持"放大鏡"效果。  
項目地址:https://github.com/jcodeing/ExtractWordView  
Demo 地址:[Download here](https://raw.githubusercontent.com/jcodeing/ExtractWordView/master/ExtractWordView-demo.apk)  
效果圖:![Renderings](https://raw.githubusercontent.com/jcodeing/ExtractWordView/master/lookme.gif)  

1. FlyRefresh  
支持 ListView, GridView, RecyclerView, ScrollView 的下拉刷新  
項目地址:https://github.com/race604/FlyRefresh  
效果圖:![Renderings](https://raw.githubusercontent.com/race604/FlyRefresh/master/images/flyrefresh.gif)  

1. MVCHelper  
實現下拉刷新,滾動底部自動加載更多,分頁加載,自動切換顯示網絡失敗佈局,暫無數據佈局,支持任意 view,真正的 MVC 架構  
支持切換主流下拉刷新框架 Android-PullToRefresh-Library,android-Ultra-Pull-To-Refresh-library,SwipeRefreshLayout  
項目地址:https://github.com/LuckyJayce/MVCHelper  
Demo 地址:https://github.com/LuckyJayce/MVCHelper/blob/master/raw/MVCHelper_Demo.apk?raw=true  

1. RecyclerViewSwipeDismiss  
支持滑動 Item 操做、點擊展開、拖動排序、展開後拖動排序等特性的 RecyclerView  
項目地址:https://play.google.com/store/apps/details?id=com.h6ah4i.android.example.advrecyclerview  
視頻:http://www.youtube.com/watch?feature=player_embedded&v=S7cSwMArjUQ  

1. WaterDropListView  
模仿 iOS 下拉刷新「水滴」效果,支持下拉刷新和上拉加載  
項目地址:https://github.com/THEONE10211024/WaterDropListView  
效果圖:![Renderings](https://github.com/THEONE10211024/WaterDropListView/blob/master/demo/demo.gif)  

1. PopupListView  
實現ListItem 點擊後置頂並可顯示客製化添加的item的內部View 的ListView  
項目地址:https://github.com/s8871404/PopupListView  
Demo 地址:https://play.google.com/store/apps/details?id=com.baobomb.popuplistview_sample  
效果圖:![Renderings](https://github.com/s8871404/PopupListView/blob/master/example.gif)  

#### 2、ActionBar
1. ActionBarSherlock  
爲 Android 全部版本提供統一的 ActionBar,解決 4.0 如下 ActionBar 的適配問題  
項目地址:https://github.com/JakeWharton/ActionBarSherlock  
Demo 地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos  
標籤:兼容庫, ActionBar  

1. ActionBar-PullToRefresh  
下拉刷新,ActionBar 出現加載中提示  
項目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh  
Demo 地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock  
APP 示例:Gmail,Google Plus,知乎等  

1. FadingActionBar  
ListView 向下滾動逐漸顯現的 ActionBar  
項目地址:https://github.com/ManuelPeinado/FadingActionBar  
Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo  
APP 示例:google music,知乎  

1. NotBoringActionBar  
google music 下拉收縮的 ActionBar  
項目地址:https://github.com/flavienlaurent/NotBoringActionBar  
Demo 地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/  
APP 示例:Google 音樂  

1. RefreshActionItem  
帶進度顯示和刷新按鈕的 ActionBar  
項目地址:https://github.com/ManuelPeinado/RefreshActionItem  
Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo  
APP 示例:The New York Times,DevAppsDirect  

1. GlassActionBar  
相似玻璃的有必定透明度的 ActionBar  
項目地址:https://github.com/ManuelPeinado/GlassActionBar  
Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo  
APP 示例:google music  

#### 3、Menu
1. MenuDrawer  
滑出式菜單,經過拖動屏幕邊緣滑出菜單,支持屏幕上下左右劃出,支持當前 View 處於上下層,支持 Windows 邊緣、ListView 邊緣、ViewPager 變化劃出菜單等。  
項目地址:https://github.com/SimonVT/android-menudrawer  
Demo 地址:http://simonvt.github.io/android-menudrawer/  
APP 示例:Gmail、Google Music 等大部分 google app  

1. SlidingMenu  
滑出式菜單,經過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單 zoom、scale、slide up 三種動畫樣式出現。與 MenuDrawer 相比而言,SlidingMenu 支持菜單動畫樣式出現,MenuDrawer 支持菜單 view 處於內容的上下層  
項目地址:https://github.com/jfeinstein10/SlidingMenu  
原理剖析文檔:[SlidingMenu](http://a.codekk.com/detail/Android/huxian99/SlidingMenu 源碼解析)  
Demo 地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example  
APP 示例:Foursquare, LinkedIn, Zappos, Rdio, Evernote Food, Plume, VLC for Android, ESPN ScoreCenter, MLS MatchDay, 9GAG, Wunderlist 2, The Verge, MTG Familiar, Mantano Reader, Falcon Pro (BETA), MW3 Barracks  

1. ArcMenu  
支持相似 Path 的左下角動畫旋轉菜單及橫向劃出菜單、圓心彈出菜單  
項目地址:https://github.com/daCapricorn/ArcMenu  
效果圖:![Renderings](https://dl.dropboxusercontent.com/u/11369687/preview0.png)  
https://dl.dropboxusercontent.com/u/11369687/preview1.png  
https://dl.dropboxusercontent.com/u/11369687/raymenu.png  
APP 示例:Path  

1. android-satellite-menu  
相似 Path 的左下角動畫旋轉菜單  
項目地址:https://github.com/siyamed/android-satellite-menu  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true  
APP 示例:Path  

1. radial-menu-widget  
圓形菜單,支持二級菜單  
項目地址:https://code.google.com/p/radial-menu-widget/  
效果圖:![Renderings](http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg)  

1. Android Wheel Menu  
圓形旋轉選取菜單  
項目地址:https://github.com/anupcowkur/Android-Wheel-Menu  
效果圖:![Renderings](https://raw.github.com/anupcowkur/Android-Wheel-Menu/master/graphics/wheel.gif)  

1. FoldingNavigationDrawer  
滑動並以摺疊方式打開菜單  
項目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android  
Demo 地址:https://play.google.com/store/apps/details?id=com.ptr.folding.sample  
效果圖:![Renderings](https://lh6.ggpht.com/VnKUZenAozQ0KFAm5blFTGqMaKFjvX-BK2JH-jrX1sIXVTqciACqRhqFH48hc4pm2Q=h310-rw)  

1. AndroidResideMenu  
仿 Dribbble 的邊欄菜單  
項目地址:https://github.com/SpecialCyCi/AndroidResideMenu  
效果圖:![Renderings](https://github.com/SpecialCyCi/AndroidResideMenu/raw/master/2.gif)  

1. CircularFloatingActionMenu  
一個可定製的圓形的浮動菜單控件,相似於 Path 的圓形菜單。這個控件的可定製性更強,能夠很容易的定製菜單出現消失時的動畫,起始角度和半徑。  
項目地址:https://github.com/oguzbilgener/CircularFloatingActionMenu  
原理剖析文檔:[CircularFloatingActionMenu](http://a.codekk.com/detail/Android/cpacm/CircularFloatingActionMenu 源碼解析)  
Demo 地址:https://github.com/oguzbilgener/CircularFloatingActionMenu/tree/master/samples  
效果圖:![Renderings](https://raw.githubusercontent.com/oguzbilgener/CircularFloatingActionMenu/master/assets/circularfab.gif)  

1. NavigationDrawerSI  
Navigation Drawer 的一個簡單實現,滑動並以摺疊方式打開菜單  
項目地址:https://github.com/mmBs/NavigationDrawerSI  
Demo 地址:https://play.google.com/store/apps/details?id=mmbialas.pl.navigationdrawersi  
效果圖:![Renderings](https://raw.githubusercontent.com/mmBs/NavigationDrawerSI/master/images/screens.png)  
APP 示例:https://play.google.com/store/apps/details?id=mmbialas.pl.navigationdrawersi  

1. DragLayout  
使用 support.v4 包下的 ViewDragHelper 實現 QQ5.0 側滑  
項目地址:https://github.com/BlueMor/DragLayout  
效果圖:![Renderings](https://github.com/BlueMor/DragLayout/raw/master/screenshots/123.gif)  

1. LDrawer  
Material Design 形式的展開摺疊 Icon  
項目地址:https://github.com/ikimuhendis/LDrawer  
效果圖:![Renderings](https://raw.githubusercontent.com/IkiMuhendis/LDrawer/master/images/animated.gif)  

1. Floating Action Button  
懸浮的圓形菜單欄,支持組建滾動時自動隱藏及其餘設置  
項目地址:https://github.com/shamanland/floating-action-button  
效果圖:![Renderings](https://camo.githubusercontent.com/c679cb23cf62830b0d4037e17cf2d8d4090bc3c8/68747470733a2f2f64726976652e676f6f676c652e636f6d2f75633f69643d3042776830534e4c506d6a5142526b466f5a4530345646393051324d)  

1. Side-Menu.Android  
分類側滑菜單,[Yalantis](http://yalantis.com/) 出品。  
項目地址:https://github.com/Yalantis/Side-Menu.Android  
原理剖析文檔:[Side-Menu.Android](http://a.codekk.com/detail/Android/cpacm/Side Menu.Android 源碼解析)  
效果圖:![Renderings](https://camo.githubusercontent.com/cb6caa7a392d01d46bca9d9485c01fc173f55fac/68747470733a2f2f6431337961637572716a676172612e636c6f756466726f6e742e6e65742f75736572732f3132353035362f73637265656e73686f74732f313638393932322f6576656e74732d6d656e755f312d312d362e676966)  

1. Context-Menu.Android  
能夠方便快速集成漂亮帶有動畫效果的上下文菜單,[Yalantis](http://yalantis.com/)出品。  
項目地址:https://github.com/Yalantis/Context-Menu.Android  
效果圖:![Renderings](https://camo.githubusercontent.com/46c15734b552ce3afefa7efd1518909046b4677e/68747470733a2f2f6431337961637572716a676172612e636c6f756466726f6e742e6e65742f75736572732f3132353035362f73637265656e73686f74732f313738353237342f39396d696c65732d70726f66696c652d6c696768745f312d312d342e676966)  

1. Droppy  
支持多種樣式的下拉菜單  
項目地址:https://github.com/shehabic/Droppy  

1. MaterialDrawer  
Material Design 風格的導航抽屜,提供簡便且強大的定製功能  
項目地址:https://github.com/mikepenz/MaterialDrawer  
Demo 地址:https://play.google.com/store/apps/details?id=com.mikepenz.materialdrawer.app  
效果圖:![Renderings](https://raw.githubusercontent.com/mikepenz/MaterialDrawer/master/DEV/screenshots/screenshot1_small.png)  

1. SlideBottomPanel  
底部劃出菜單,滑動時背景圖透明度漸變,支持嵌套 LiewView 或 ScrollView  
項目地址:[https://github.com/kingideayou/SlideBottomPanel](https://github.com/kingideayou/SlideBottomPanel)  
Demo 地址:[SlideBottomPanelDemo 下載](https://github.com/kingideayou/SlideBottomPanel/raw/master/apk/SlideBottomPanelDemo.apk)  
效果圖:![Renderings](https://github.com/kingideayou/SlideBottomPanel/blob/master/imgs/demo_list_view.gif)  

#### 4、ViewPager 、Gallery
1. ConvenientBanner  
通用的廣告欄控件,讓你輕鬆實現廣告頭效果。支持無限循環,能夠設置自動翻頁和時間(並且很是智能,手指觸碰則暫停翻頁,離開自動開始翻頁。你也能夠設置在界面onPause的時候不進行自動翻頁,onResume以後繼續自動翻頁),而且提供多種翻頁特效。 對比其餘廣告欄控件,大多都須要對源碼進行改動才能加載網絡圖片,或者幫你集成不是你所須要的圖片緩存庫。而這個庫能讓有代碼潔癖的你歡喜,不須要對庫源碼進行修改你就可使用任何你喜歡的網絡圖片庫進行配合。
項目地址:https://github.com/saiwu-bigkoo/Android-ConvenientBanner  
效果圖:![Renderings](https://github.com/saiwu-bigkoo/Android-ConvenientBanner/blob/master/preview/convenientbannerdemo.gif)  

1. Android-ViewPagerIndicator  
配合 ViewPager 使用的 Indicator,支持各類位置和樣式  
項目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator  
Demo 地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample  
APP 示例:太多了。。  

1. JazzyViewPager  
支持 Fragment 切換動畫的 ViewPager,動畫包括轉盤、淡入淡出、翻頁、層疊、旋轉、方塊、翻轉、放大縮小等,效果相似桌面左右切換的各類效果,不過桌面並不是用 ViewPager 實現而已  
項目地址:https://github.com/jfeinstein10/JazzyViewPager  
Demo 地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true  

1. JellyViewPager  
特殊切換動畫的 ViewPager  
項目地址:https://github.com/chiemy/JellyViewPager  
效果圖:![Renderings](https://github.com/chiemy/JellyViewPager/raw/master/capture.gif)  

1. Android-DirectionalViewPager  
支持橫向和縱向(垂直)的 ViewPager  
項目地址:https://github.com/JakeWharton/Android-DirectionalViewPager  
Demo 地址:https://market.android.com/details?id=com.directionalviewpager.sample  

1. FancyCoverFlow  
支持 Item 切換動畫效果的相似 Gallery View  
項目地址:https://github.com/davidschreiber/FancyCoverFlow  
Demo 地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples  
效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/ef5ced52b7b54652b50499521ed797c0188c7a6b/687474703a2f2f64617669647363687265696265722e6769746875622e696f2f46616e6379436f766572466c6f772f73637265656e73686f74322e706e67)  

1. AndroidTouchGallery  
支持雙擊或雙指縮放的 Gallery(用 ViewPager 實現),相比下面的 PhotoView,在被放大後依然能滑到下一個 item,而且支持直接從 url 和文件中獲取圖片,  
項目地址:https://github.com/Dreddik/AndroidTouchGallery  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true  
APP 示例:相似微信中查看聊天記錄圖片時可雙擊放大,而且放大狀況下能正常左右滑動到先後圖片  

1. Android Auto Scroll ViewPager  
Android 自動滾動 輪播循環的 ViewPager  
項目地址:https://github.com/Trinea/android-auto-scroll-view-pager  
Demo 地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo  
文檔介紹:http://www.trinea.cn/android/auto-scroll-view-pager/  

1. Android PagerSlidingTabStrip  
配合 ViewPager 使用的 Indicator,支持 ViewPager Scroll 時 Indicator 聯動  
項目地址:https://github.com/astuetz/PagerSlidingTabStrip  
原理剖析文檔:[Android PagerSlidingTabStrip](http://a.codekk.com/detail/Android/ayyb1988/PagerSlidingTabStrip 源碼解析)  
Demo 地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample  

1. ViewPager3D  
ViewPager3D 效果  
項目地址:https://github.com/inovex/ViewPager3D  

1. AnimaTabsview  
仿網易雲音樂標籤切換的動畫,帶透明小三角  
項目地址:https://github.com/wuyexiong/transparent-over-animtabsview  
在線演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html  

1. LoopingViewPager  
無限循環的 ViewPager  
項目地址:https://github.com/imbryk/LoopingViewPager  

1. android_page_curl  
翻書卷曲效果  
項目地址:https://github.com/harism/android_page_curl  
在線演示:https://www.youtube.com/watch?v=iwu7P5PCpsw  
APP 示例:iReader  

1. ViewPagerIndicator  
簡化並實現 android 的 TabHost 效果,頂部滑動 tab,引導頁,支持自定義 tab 樣式,自定義滑動塊樣式和位置,自定義切換 tab 的過渡動畫,子界面的預加載和界面緩存,設置界面是否可滑動  
項目地址:https://github.com/LuckyJayce/ViewPagerIndicator  

1. ScreenSlideIndicator  
輕量級的圓形 Indicadtor,位置能夠自由調整,不會對 ViewPager 產生任何影響。  
項目地址:[ScreenSlidePager](https://github.com/LyndonChin/Android-ScreenSlidePager)  
效果圖:![Renderings](https://github.com/LyndonChin/AndroidScreenSlidePager/raw/master/art/sample.gif)  

1. SmartTabLayout  
自定義的 Tab title strip,基於 Google Samples 中的 android-SlidingTabBasic 項目,滑動時 Indicator 可平滑過渡。  
項目地址:https://github.com/ogaclejapan/SmartTabLayout  
Demo 地址:https://play.google.com/store/apps/details?id=com.ogaclejapan.smarttablayout.demo  
效果圖:![Renderings](https://raw.githubusercontent.com/ogaclejapan/SmartTabLayout/master/art/demo1.gif)  

1. AndroidImageSlider  
Android 圖片滑動  
項目地址:https://github.com/daimajia/AndroidImageSlider  
效果圖:![Renderings](https://camo.githubusercontent.com/f64413139bbaa918131384d3597c33e39333aa7f/687474703a2f2f7777332e73696e61696d672e636e2f6d773639302f36313064633033346a773165677a6f7236366f6a64673230393530666b6e70652e676966)  
App  
示例:https://github.com/daimajia/AndroidImageSlider/releases/download/v1.0.8/demo-1.0.8.apk  

1. RecyclerViewPager  
徹底繼承自 RecyclerView,能夠自定義觸發翻頁的距離,可自定義翻頁速度,支持垂直方向的 ViewPager,支持 Fragment。  
項目地址:[RecyclerViewPager](https://github.com/lsjwzh/RecyclerViewPager)  
效果圖:![Renderings](https://github.com/lsjwzh/RecyclerViewPager/blob/master/fragment.gif)  

1. CircleIndicator  
輕量級ViewPager指示器,支持三種不一樣的模式    
項目地址:[CircleIndicator]( https://github.com/THEONE10211024/CircleIndicator)  
效果圖:![Renderings]( https://github.com/THEONE10211024/CircleIndicator/blob/master/demo/inside.gif)  
![Renderings]( https://github.com/THEONE10211024/CircleIndicator/blob/master/demo/outside.gif)    
![Renderings]( https://github.com/THEONE10211024/CircleIndicator/blob/master/demo/solo.gif)    

#### 5、GridView
1. StaggeredGridView  
容許非對齊行的 GridView,相似 Pinterest 的瀑布流,而且跟 ListView 同樣自帶 View 緩存,繼承自 ViewGroup  
項目地址:https://github.com/maurycyw/StaggeredGridView  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true  
APP 示例:Pinterest 等  

1. AndroidStaggeredGrid  
容許非對齊行的 GridView,相似 Pinterest 的瀑布流,繼承自 AbsListView  
項目地址:https://github.com/etsy/AndroidStaggeredGrid  
APP 示例:Pinterest 等  

1. PinterestLikeAdapterView  
容許非對齊行的 GridView,相似 Pinterest 的瀑布流,容許下拉刷新  
項目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView  
APP 示例:Pinterest 等  

1. DraggableGridView  
Item 可拖動交換位置的 GridView,實際是本身繼承 ViewGroup 實現,相似桌面的單屏效果,可屏幕自動上下滾動進行 Item 移動交換,多屏效果見下面 PagedDragDropGrid  
項目地址:https://github.com/thquinn/DraggableGridView  
Demo 地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true  

1. StickyGridHeaders  
GroupName 滑動到頂端時會固定不動直到另一個 GroupName 到達頂端的 GridView  
項目地址:https://github.com/TonicArtos/StickyGridHeaders  
效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/90b57e9383704c400706545225d439e057c6fcc0/687474703a2f2f342e62702e626c6f6773706f742e636f6d2f2d535f4262685758367754592f55517057306377554745492f41414141414141414776552f7a7a4a586a2d50635662592f73313630302f73637265656e2d6c616e6473636170652d736d616c6c65722e706e67)  

1. PagedDragDropGrid  
Item 可拖動交換位置、拖動刪除的自定義控件,實際是本身繼承 ViewGroup 實現,相似桌面的多屏效果,可拖動到屏幕邊緣,屏幕自動左右滾動進行 Item 移動交換,可拖動進行刪除,單屏效果見上面 DraggableGridView  
項目地址:https://github.com/mrKlar/PagedDragDropGrid  
在線演示:http://youtu.be/FYTSRfthSuQ  

1. Android-DraggableGridViewPager  
Item 可拖動交換位置的 GridView,實際是本身繼承 ViewGroup 實現,相似桌面的多屏效果,可屏幕自動左右滾動進行 Item 移動交換,單屏效果見上面 DraggableGridView  
項目地址:https://github.com/zzhouj/Android-DraggableGridViewPager  
Demo 地址:https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true  

1. TwoWayGridView  
可橫向滾動的 GridView  
項目地址:https://github.com/jess-anders/two-way-gridview  

1. PagingGridView  
分頁加載的 GridView。當滑動到 GridView 底部最後一個行時,顯示一個進度行,而後加載下一頁數據,並顯示。  
項目地址:https://github.com/nicolasjafelle/PagingGridView  

1. AsymmetricGridView  
一個支持跨行和跨列可變 Item 大小的 GridView  
項目地址:https://github.com/felipecsl/AsymmetricGridView  
Demo 地址:https://play.google.com/store/apps/details?id=com.felipecsl.asymmetricgridview.app  
效果圖:![Renderings](https://raw.githubusercontent.com/felipecsl/AsymmetricGridView/master/screenshots/ss_5_cols.png)  

1. GridView with Header and Footer  
和`ListView`同樣帶頭部和底部的`GridView`,用法和`ListView`同樣  
項目地址:https://github.com/liaohuqiu/android-GridViewWithHeaderAndFooter  
效果圖:![Renderings](https://raw.githubusercontent.com/liaohuqiu/android-GridViewWithHeaderAndFooter/master/screen-shot.png)  

#### 6、ImageView
1. PhotoView  
支持雙擊或雙指縮放的 ImageView,在 ViewPager 等 Scrolling view 中正常使用,相比上面的 AndroidTouchGallery,不只支持 ViewPager,同時支持單個 ImageView  
項目地址:https://github.com/chrisbanes/PhotoView  
原理剖析文檔:[PhotoView](http://a.codekk.com/detail/Android/dkmeteor/PhotoView 源碼解析)  
Demo 地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample  
APP 示例:photup  

1. android-gif-drawable  
支持 gif 顯示的 view,用 jni 實現的,編譯生成 so 庫後直接 xml 定義 view 便可,並且自己不依賴於其餘開源項目因此相對下面的 ImageViewEx 簡單的多  
項目地址:https://github.com/koral--/android-gif-drawable  

1. ImageViewEx  
支持 Gif 顯示的 ImageView,依賴不少,編譯過程很繁瑣  
項目地址:https://github.com/frapontillo/ImageViewEx  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true  

1. RoundedImageView  
帶圓角的 ImageView  
項目地址:https://github.com/vinc3m1/RoundedImageView  
效果圖:![Renderings](https://raw.github.com/makeramen/RoundedImageView/master/screenshot.png)  

1. SelectableRoundedImageView  
ImageView 容許四個角的每個有不一樣的半徑值。也容許橢圓形、圓形的形狀或者邊  
項目地址:https://github.com/pungrue26/SelectableRoundedImageView  
Demo 地址:https://play.google.com/store/apps/details?id=com.joooonho  
效果圖:![Renderings](https://camo.githubusercontent.com/25d2e5fb8783b5dd09c00b03091172a79c69350e/687474703a2f2f692e696d6775722e636f6d2f55355653376d322e706e673f31)  

1. ColorArt  
根據圖片的均色設置背景色顯示文字和圖片,相似 itune11 中效果  
項目地址:https://github.com/MichaelEvans/ColorArt  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true  

1. CircleImageView  
圓形的 ImageView  
項目地址:https://github.com/hdodenhof/CircleImageView  
效果圖:![Renderings](https://raw.github.com/hdodenhof/CircleImageView/master/screenshot.png)  

1. ImageViewZoom  
支持放大和平移的 ImageView  
項目地址:https://github.com/sephiroth74/ImageViewZoom  
APP 示例:https://play.google.com/store/apps/details?id=com.aviary.android.feather  

1. KenBurnsView  
實現 Ken Burns effect 效果,達到身臨其境效果的 ImageView  
項目地址:https://github.com/flavioarfaria/KenBurnsView  

1. CustomShapeImageView  
各類形狀的 ImageView, 相比上面的圓形 ImageView,多了更多形狀  
項目地址:https://github.com/MostafaGazar/CustomShapeImageView  
效果圖:![Renderings](https://raw.github.com/MostafaGazar/CustomShapeImageView/master/Screenshot_2013-11-05-23-08-12.png)  

1. Shape Image View  
能夠自定義各類形狀的 ImageView, 而且支持邊框  
項目地址:https://github.com/siyamed/android-shape-imageview  
效果圖:![Renderings](https://github.com/siyamed/android-shape-imageview/raw/master/images/shader-buble.png)  
https://github.com/siyamed/android-shape-imageview/raw/master/images/all-samples.png  

1. TextDrawable  
一個用於生成帶有文本或者字母的圖片的輕量級庫。擴展自 Drawable,所以可用於現有/自定義/網絡等 ImageView 類,而且包含一個流接口用於建立 drawables 以及一個定製的 ColorGenerator  
項目地址:https://github.com/amulyakhare/TextDrawable  
效果圖:![Renderings](https://raw.githubusercontent.com/amulyakhare/TextDrawable/master/screens/screen7.png)  

1. android-smart-image-view  
可從 URL 或 contact address book 加載圖片的 ImageView,支持緩存  
項目地址:https://github.com/loopj/android-smart-image-view  

1. PhotoView  
支持雙指/雙擊縮放的ImageView,支持從一個PhotoView縮放到另一個PhotoView(點擊圖片放大預覽),相對於其餘PhototView有更加平滑的縮放,平移的動畫,而且支持全部的ScaleType,能夠做爲普通的ImageView使用  
項目地址:https://github.com/bm-x/PhotoView  
效果圖:![Renderings](https://github.com/bm-x/PhotoView/raw/master/demo1.gif)    

#### 7、ProgressBar
1. SmoothProgressBar  
水平進度條  
項目地址:https://github.com/castorflex/SmoothProgressBar  
Demo 地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample  

1. MaterialProgessBar  
Material Design 的進度條,支持 Android 4.0  
項目地址:https://github.com/DreaminginCodeZH/MaterialProgressBar  
Demo 地址:https://github.com/DreaminginCodeZH/MaterialProgressBar/blob/master/dist/sample.apk  

1. ProgressWheel  
支持進度顯示的圓形 ProgressBar  
項目地址:https://github.com/Todd-Davies/ProgressWheel  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true  

1. android-square-progressbar  
在圖片周圍顯示進度  
項目地址:https://github.com/mrwonderman/android-square-progressbar  
Demo 地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example  
效果圖:![Renderings](https://googledrive.com/host/0BwESwPCuXtw7eExwSFVLQkR2TTg/newscreen1.png)  
APP 示例:square  

1. HoloCircularProgressBar  
Android4.1 時鐘 App 樣式  
項目地址:https://github.com/passsy/android-HoloCircularProgressBar  
效果圖:![Renderings](https://raw.github.com/passsy/android-HoloCircularProgressBar/master/raw/screenshot1.png)  
APP 示例:Android4.1 時鐘 App  

1. ProgressButton  
經過圖釘的不一樣狀態顯示進度  
項目地址:https://github.com/f2prateek/progressbutton  
文檔介紹:http://f2prateek.com/progressbutton/  
效果圖:![Renderings](http://f2prateek.com/progressbutton/static/states.png)  

1. GoogleProgressBar  
相似 google 多個圓形卡片翻轉的 progressBar  
項目地址:https://github.com/jpardogo/GoogleProgressBar  
效果圖:![Renderings](https://raw.githubusercontent.com/jpardogo/GoogleProgressBar/master/art/GoogleProgressBar.gif)  

1. TH-ProgressButton  
帶圓形進度顯示的按鈕  
項目地址:https://github.com/torryharris/TH-ProgressButton  
效果圖:![Renderings](https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot1.png)  
https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot2.png  

1. NumberProgressBar  
帶數字進度的進度條  
項目地址:https://github.com/daimajia/NumberProgressBar  
效果圖:![Renderings](https://camo.githubusercontent.com/0c92568af7ec4e04e2e1503acdd2ca99854ab0b5/687474703a2f2f7777332e73696e61696d672e636e2f6d773639302f36313064633033346a77316566797264386e376937673230637a30326d7135662e676966)  

1. CircularProgressDrawable  
帶圓形進度顯示的進度條  
項目地址:https://github.com/Sefford/CircularProgressDrawable  
效果圖:![Renderings](https://raw.githubusercontent.com/Sefford/CircularProgressDrawable/master/overshoot.gif)  

1. Android-RoundCornerProgressBar  
Android 圓角 ProgressBar,可自定義圓角顏色和半徑,包括帶 Icon 和不帶 Icon 兩種類型。  
項目地址:https://github.com/akexorcist/Android-RoundCornerProgressBar  
效果圖:![Renderings](https://raw.githubusercontent.com/akexorcist/Android-RoundCornerProgressBar/master/image/screenshot_02.png)  

1. circular-progress-button  
帶進度顯示的 Button  
項目地址:https://github.com/dmytrodanylyk/circular-progress-button  
效果圖:![Renderings](https://raw.githubusercontent.com/dmytrodanylyk/circular-progress-button/master/screenshots/intro.gif)  

1. WaveView  
一個波紋效果的 View,可用來作 ProgressBar  
項目地址:https://github.com/john990/WaveView  
Demo 地址:https://raw.github.com/john990/WaveView/master/screenshot%26apk/demo.unaligned.apk  
效果圖:![Renderings](https://camo.githubusercontent.com/60722e9d4f2d2daa78a8650cb27a32adea82bdd4/68747470733a2f2f7261772e6769746875622e636f6d2f6a6f686e3939302f57617665566965772f6d61737465722f73637265656e73686f7425323661706b2f73637265656e73686f742e676966)  

1. MaterialLoadingProgressBar  
抽取自 SwipeRefreshLayout 的 Material Design 進度指示器  
項目地址:https://github.com/lsjwzh/MaterialLoadingProgressBar  
效果圖:![Renderings](https://github.com/lsjwzh/MaterialLoadingProgressBar/raw/master/screen.gif)  

1. MetaballLoading  
A 2d metaball loading
項目地址:https://github.com/dodola/MetaballLoading
效果圖:![Renderings](https://github.com/dodola/MetaballLoading/blob/master/metaball.gif)
效果圖:![Renderings](https://github.com/dodola/MetaballLoading/blob/master/metaball2.gif)

1. SectorProgressView  
一個圓形或環形的進度顯示控件,用圓中扇形的角度大小來表示進度信息<br/>
項目地址:https://github.com/timqi/SectorProgressView<br/>
Demo:[apk download](https://github.com/timqi/SectorProgressView/raw/master/art/example.apk) <br/>
效果圖:<br/>![ColorfulRingProgressView](https://github.com/timqi/SectorProgressView/raw/master/art/colorfulringprogressview.demo.gif) ![SectorProgressView](https://github.com/timqi/SectorProgressView/raw/master/art/sectorprogressview.demo.gif)

#### 8、TextView
包括 TextView 及全部繼承自 TextView 控件,如 EditText、Button、RadioButton  

1. android-flowtextview  
文字自動環繞其餘 View 的 Layout  
項目地址:https://github.com/deano2390/FlowTextView  
效果圖:![Renderings](http://i949.photobucket.com/albums/ad332/vostroman1500/1.png)  

1. Android Form EditText  
驗證輸入合法性的編輯框,支持輸入、英文、ip、url 等多種正則驗證  
項目地址:https://github.com/vekexasia/android-edittext-validator  
Demo 地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample  

1. Emojicon  
支持 emojis 的 TextView 和 EditText  
項目地址:https://github.com/rockerhieu/emojicon  
文檔介紹:http://rockerhieu.com/emojicon/  

1. android-circlebutton  
Android 圓形按鈕,實際實現是繼承自 ImageView  
項目地址:https://github.com/markushi/android-circlebutton  
Demo 地址:https://github.com/markushi/android-circlebutton/blob/master/example/example.apk  

1. Segmented Radio Buttons for Android  
iOS’s segmented controls 的實現  
項目地址:https://github.com/vinc3m1/android-segmentedradiobutton  
Demo 地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true  
效果圖:![Renderings](https://raw.github.com/vinc3m1/android-segmentedradiobutton/master/screens/segmentedradio.png)  

1. Chips EditText Library  
支持國家名字聯想從而選擇顯示該國國旗的 EditText,實際就是經過 SpannableStringBuilder 實現  
項目地址:https://github.com/kpbird/chips-edittext-library  
Demo 地址:https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin  

1. AutoFitTextView  
可固定邊界內容字體大小自適應的 TextView  
項目地址:https://github.com/grantland/android-autofittextview  

1. Shimmer for Android  
文字發淡光的 TextView  
項目地址:https://github.com/RomainPiel/Shimmer-android  

1. Titanic  
能夠顯示水位上升降低(不知道該怎麼描述 囧)的 TextView  
項目地址:https://github.com/RomainPiel/Titanic  
效果圖:![Renderings](https://github.com/RomainPiel/Titanic/raw/master/titanic.gif)  

1. android-iconify  
提供帶 Icon 的 TextView,Menu,Button 等  
項目地址:https://github.com/JoanZapata/android-iconify  

1. Calligraphy  
讓咱們在 android 開發中使用自定義字體變得更加簡單  
項目地址:https://github.com/chrisjenx/Calligraphy  
效果圖:![Renderings](https://github.com/chrisjenx/Calligraphy/raw/master/screenshot.png)  

1. CreditsRoll  
相似星球大戰字幕效果的 TextView  
項目地址:https://github.com/frakbot/CreditsRoll  

1. android-process-buton  
帶加載或提交進度的 Button  
項目地址:https://github.com/dmytrodanylyk/android-process-buton  

1. FButton  
扁平化的 Button  
項目地址:https://github.com/hoang8f/android-flat-button  
Demo 地址:https://play.google.com/store/apps/details?id=info.hoang8f.fbutton.demo  

1. FloatingActionButton  
一個相似 Android 版 Google+浮動功能按鈕的控件,能夠響應 ListView 的滾動事件。當列表向上滾動的時候會自動顯示,向下滾動的時候自動隱藏。  
項目地址:https://github.com/makovkastar/FloatingActionButton  
Demo 地址:https://github.com/makovkastar/FloatingActionButton/tree/master/  
效果圖:![Renderings](https://raw.githubusercontent.com/makovkastar/FloatingActionButton/master/art/demo.gif)  

1. Android Saripaar  
Android 表單驗證  
項目地址:https://github.com/ragunathjawahar/android-saripaar/  

1. JumpingBeans  
文字像 Mexican beans 同樣跳動  
項目地址:https://github.com/frakbot/JumpingBeans  
Demo 地址:http://play.google.com/store/apps/details?id=net.frakbot.jumpingbeans.demo  
效果圖:![Renderings](https://github.com/frakbot/JumpingBeans/blob/master/art/jumpingdots.gif)  

1. FancyButtons  
一個不用圖片就能夠幫助咱們建立出漂亮按鈕的庫。  
項目地址:https://github.com/medyo/fancybuttons  
Demo 地址:https://github.com/medyo/fancybuttons/tree/master/samples  
效果圖:![Renderings](https://camo.githubusercontent.com/8c5800ef180f69d302237132906737bf71a52caf/68747470733a2f2f7261772e6769746875622e636f6d2f6d6564796f2f66616e6379627574746f6e732f6d61737465722f73637265656e73686f74732f66616e63792e706e67)  
https://raw.githubusercontent.com/medyo/fancybuttons/master/screenshots/fancy2.png  

1. Android-RobotoTextView  
一個實現了全部 Roboto 字體的 TextView,包括新出的 Roboto Slab 字體。  
項目地址:https://github.com/johnkil/Android-RobotoTextView  
Demo 地址:http://play.google.com/store/apps/details?id=com.devspark.robototextview  
Demo 項目:https://github.com/johnkil/Android-RobotoTextView/tree/master/robototextview-sample  
效果圖:![Renderings](https://camo.githubusercontent.com/f058c810055e1ff12fa995346059ad399d9c0f95/687474703a2f2f6934362e74696e797069632e636f6d2f6239646736392e706e67)  

1. Android-WizardPager  
一個表單嚮導庫  
項目地址:https://github.com/romannurik/android-wizardpager  
Demo 項目:https://github.com/str4d/android-wizardpager/tree/textfield  
效果圖:![Renderings](https://camo.githubusercontent.com/685a1eee3b9b7eb6a0409061031654ea7d6b0b17/68747470733a2f2f6c68352e676f6f676c6575736572636f6e74656e742e636f6d2f2d664944555a3074514373632f554a4e4c6a6e504c5447492f41414141414141416f4f382f784b63654f61746c6a50302f773431332d683638392d6e6f2f322e706e67)  

1. RippleView  
一個實現了 Android L 上才引入的點擊按鈕後出現水波紋效果的按鈕  
項目地址:https://github.com/siriscac/RippleView  
Demo 項目:https://github.com/siriscac/RippleView/tree/master/RippleViewExample  
效果圖:![Renderings](https://camo.githubusercontent.com/eec41193900aad4803dcf18bc9915fafa3f7d1cf/68747470733a2f2f7261772e6769746875622e636f6d2f73697269736361632f526970706c65566965772f6d61737465722f53637265656e732f53637265656e2e676966)  

1. RippleEffect  
一個實現 Material Design Ripple 效果的庫,支持 Android API 9+以上版本。  
項目地址:https://github.com/traex/RippleEffect  
Demo 項目:https://github.com/traex/RippleEffect/tree/master/sample  
效果圖:![Renderings](https://raw.githubusercontent.com/traex/RippleEffect/master/header.png)  

1. RippleCompat
使用易於移植的方式爲UI控件實現波紋效應,能夠適配控件原背景及Palette支持。api簡單,可自定義效果,兼容至Android API 7+。
項目地址:https://github.com/desmond1121/RippleCompat
Demo 項目:https://github.com/desmond1121/RippleCompat/tree/master/app
效果圖:
![Renderings](https://raw.githubusercontent.com/desmond1121/RippleCompat/master/demo/Demo.gif)

palette效果:
![Renderings](https://raw.githubusercontent.com/desmond1121/RippleCompat/master/demo/Demo1.gif)

1. Android Floating Label Widgets  
包含一系列控件,這些控件特色是:有默認值,當值不爲空時默認值浮動到上面變爲提示  
項目地址:https://github.com/marvinlabs/android-floatinglabel-widgets  
Demo 地址:https://play.google.com/store/apps/details?id=com.marvinlabs.widget.floatinglabel.demo  
在線演示:http://www.youtube.com/watch?v=hpZD9gJcRg0&feature=youtu.be  

1. MaterialEditText  
EditText 的 Material Design 實現。包含 [Google Material Design Spec](http://www.google.com/design/spec/components/text-fields.html)中的 UI 效果和一些新增特性。  
項目地址:https://github.com/rengwuxian/MaterialEditText  

1. MaterialEditText
實現 [Material Design](http://www.google.com/design/spec/components/text-fields.html) 中 Ripple 效果線條背景的 EditText。直接替換原生 EditText 便可集成。
項目地址:https://github.com/DreamingInCodeZH/MaterialEditText  

1. MultiActionTextView  
能夠分別給 TextView 中的某幾個字設置點擊事件的 TextView  
項目地址:https://github.com/ajaysahani/MultiActionTextView  
效果圖:![Renderings](https://camo.githubusercontent.com/1223e37d084e84ec0e22a1b27e7513661d0e1b39/687474703a2f2f692e696d6775722e636f6d2f773934576f53582e706e67)  

1. ToggleButton  
狀態切換的 Button,相似 iOS,用 View 實現  
項目地址:https://github.com/zcweng/ToggleButton  
效果圖:![Renderings](https://github.com/zcweng/ToggleButton/raw/master/ToggleButtonSample/21879.gif)  

1. SwitchButton  
狀態切換的 Button,相似 iOS,擁有良好的用戶界面  
項目地址:https://github.com/kyleduo/SwitchButton  
效果圖:![Renderings](https://raw.githubusercontent.com/kyleduo/SwitchButton/master/preview/demo_131.jpg)  

1. SlideSwitch  
狀態切換的開關,能夠設置爲相似 IOS 的圓形,也能夠設置爲矩形,用 View 實現  
項目地址:https://github.com/Leaking/SlideSwitch  
效果圖:![Renderings](https://github.com/Leaking/SlideSwitch/blob/master/Example/TestLibs/res/drawable-hdpi/slide_c.gif)  

1. ExpandableTextView  
可展開和收縮內容的 TextView。  
項目地址:https://github.com/Manabu-GT/ExpandableTextView  
效果圖:![Renderings](https://camo.githubusercontent.com/8bf46083b3bd152c2051ae4c234649dbbb975376/68747470733a2f2f7261772e6769746875622e636f6d2f4d616e6162752d47542f457870616e6461626c6554657874566965772f6d61737465722f6172742f726561646d655f64656d6f2e676966)  

1. TagCloudView(支持 SingleLine 模式的標籤雲)  
標籤雲效果,只須要一行代碼便可設置爲 SingleLine 模式,輕鬆實現知乎問題話題列表效果。SingleLine 模式時末尾文字及圖片可自定義。
項目地址:https://github.com/kingideayou/TagCloudView  
示例APK地址:https://github.com/kingideayou/TagCloudView/raw/master/apk/Demo.apk  
APP示例:知乎  
效果圖:![Renderings](https://raw.githubusercontent.com/kingideayou/TagCloudView/master/imgs/tagCloudView_3.gif)  

1. BubbleTextView
Android Bubble View
項目地址:https://github.com/dupengtao/BubbleTextView
效果圖:![Renderings](https://camo.githubusercontent.com/3b8c44089da79868cb45a4da372f2eaae0f3341b/687474703a2f2f3764397069632e636f6d312e7a302e676c622e636c6f7564646e2e636f6d2f627562626c65775f766965772e706e67)  

1. shadow-layout
Android Shadow Layout
解決了`CardView`:1.不能畫圓的陰影。2.設置陰影的位置。3.設置陰影顏色。
項目地址:https://github.com/dmytrodanylyk/shadow-layout
效果圖:
![Renderings](https://raw.githubusercontent.com/dmytrodanylyk/shadow-layout/master/screenshots/intro.png)  

#### 9、ScrollView
1. Discrollview  
支持滾動時 Item 淡入淡出,平移,縮放效果的 ScrollView  
項目地址:https://github.com/flavienlaurent/discrollview  
Demo 地址:https://github.com/flavienlaurent/discrollview/raw/master/sample.apk  

1. PullScrollView  
仿照新浪微博 Android 客戶端我的中心的 ScrollView,下拉背景伸縮回彈效果。  
項目地址:https://github.com/MarkMjw/PullScrollView  
效果圖:![Renderings](https://raw.github.com/MarkMjw/PullScrollView/master/Screenshots/1.png)  

1. ArcLayout  
一個很是簡單的弧佈局庫  
項目地址:https://github.com/ogaclejapan/ArcLayout  
Demo 地址:https://play.google.com/store/apps/details?id=com.ogaclejapan.arclayout.demo  
效果圖:![Renderings](https://raw.githubusercontent.com/ogaclejapan/ArcLayout/master/art/demo1.gif)  
https://raw.githubusercontent.com/ogaclejapan/ArcLayout/master/art/demo2.gif  

1. ParallaxScrollView  
支持視差滾動的 ScrollView ,背景圖片的滾動速度小於 ScrollView 中子控件的滾動速度  
項目地址:https://github.com/chrisjenx/ParallaxScrollView  
Demo 地址:http://cloud.github.com/downloads/chrisjenx/ParallaxScrollView/ParallaxScrollViewDemo-v1.0.5.apk  

1. AKParallax-Android  
支持視差滾動的 ScrollView  
項目地址:https://github.com/ideaismobile/AKParallax-Android  
Demo 地址:https://play.google.com/store/apps/details?id=com.appkraft.parallax_sample  

1. Android-ObservableScrollView  
監聽滾動視圖滾動事件的庫,幫助與 Toolbar 的交互動效處理與 Material Design 的實現  
項目地址:https://github.com/ksoichiro/Android-ObservableScrollView  
Demo 地址:https://play.google.com/store/apps/details?id=com.github.ksoichiro.android.observablescrollview.samples2  

1. OverScrollView  
有彈性的 ScrollView,實現了當手指滑動到 ScrollView 的頂部、底部時,能夠繼續的向上、向下拉伸。當釋放手指的時候,向上、下回彈  
項目地址:https://github.com/EverythingMe/OverScrollView  

#### 10、TimeView
包括 TimePicker、DatePicker、CalendarView、Clock 等時間相關控件  

1. android-times-square  
Android 日曆時間部件,支持選取單個日期,多個日期,及日期區間段和對話框形式顯示  
項目地址:https://github.com/square/android-times-square  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/times-square-demo.apk?raw=true  

1. android-calendar-card  
日曆  
項目地址:https://github.com/kenumir/android-calendar-card  
Demo 地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample  
效果圖:![Renderings](https://raw.github.com/kenumir/android-calendar-card/master/calendar-card-sample/_work/device-2013-10-12-151801.png)  

1. AndroidWheel  
Android Wheel 支持城市、多種日期時間、密碼、圖片  
項目地址:https://code.google.com/p/android-wheel/  
效果圖:![Renderings](http://farm6.staticflickr.com/5532/11621528786_220c040ba5_o.jpg)  

1. GoogleDateTimePickers  
時間選擇部件  
項目地址:https://github.com/Mirkoddd/GoogleDateTimePickers  
文檔介紹:https://play.google.com/store/apps/details?id=com.mirko.sample&hl=it  

1. DateTimePicker  
日期選擇部件(Google Agenda 的樣式風格)  
項目地址:https://github.com/flavienlaurent/datetimepicker  
Demo 地址:https://raw.github.com/biboune/datetimepicker/master/datetimepicker-sample.apk  
效果圖:![Renderings](https://camo.githubusercontent.com/493edeea3eb553ad0d0b121dbead0d7ec6a858f2/68747470733a2f2f7261772e6769746875622e636f6d2f6269626f756e652f6461746574696d657069636b65722f6d61737465722f67726170686963732f696d67312e706e67)  

1. android-betterpickers  
提供日期、數字、時間(數字方式和鐘錶方式)、重複週期(鬧鐘的週期重複)、HMS(時、分、秒)的選擇,支持以 DialogFragment 的彈窗選擇  
項目地址:https://github.com/derekbrameyer/android-betterpickers  
Demo 地址:https://play.google.com/store/apps/details?id=com.doomonafireball.betterpickers.sample  
效果圖:![Renderings](https://camo.githubusercontent.com/897ae3c71b49c4366565f3480719647687b1804a/68747470733a2f2f7261772e6769746875622e636f6d2f646572656b6272616d657965722f616e64726f69642d6265747465727069636b6572732f6d61737465722f73616d706c652f696d61676572792f7765625f666561747572655f677261706869632e706e67)  

1. Android Week View  
日期控件,支持周,天視圖,支持自定義樣式  
項目地址:https://github.com/alamkanak/Android-Week-View  
效果圖:![Renderings](https://github.com/alamkanak/Android-Week-View/blob/master/images/screen-shot.png)  

1. PickerView  
仿 iOS 的 PickerView 控件,有時間選擇和選項選擇並支持一二三級聯動效果,TimePopupWindow 時間選擇器,支持年月日時分,年月日,時分等格式;OptionsPopupWindow 選項選擇器,支持一,二,三級選項選擇,而且能夠設置是否聯動  
項目地址:https://github.com/saiwu-bigkoo/Android-PickerView  
效果圖:![Renderings](https://github.com/saiwu-bigkoo/PickerView/blob/master/preview/pickerdemo.gif)  

1. CountdownView  
Android 倒計時控件,使用Canvas繪製,支持多種樣式  
項目地址:https://github.com/iwgang/CountdownView  
效果圖:![Renderings](https://raw.githubusercontent.com/iwgang/CountdownView/master/screenshot/screenshot.gif)

#### 11、TipView
包括 Toast、角標、UndoBar 等提示性控件  

1. SVProgressHUD
SVProgressHUD For Android 精仿iOS的提示庫 SVProgressHUD,api也幾乎同樣。  
項目地址:https://github.com/saiwu-bigkoo/Android-SVProgressHUD  
效果圖:![Renderings](https://github.com/saiwu-bigkoo/Android-SVProgressHUD/raw/master/preview/svprogresshuddemo.gif)  

1. Crouton  
豐富樣式的 Toast,容許 alert、comfirm、info 樣式及點擊消失樣式,容許設置 Toast 顯示時間,容許自定義 View。 本文 32. SuperToasts 爲其擴展版  
項目地址:https://github.com/keyboardsurfer/Crouton  
Demo 地址:http://play.google.com/store/apps/details?id=de.keyboardsurfer.app.demo.crouton  

1. supertooltips  
帶動畫效果的 Tips 顯示  
項目地址:https://github.com/nhaarman/supertooltips  
Demo 地址:https://play.google.com/store/apps/details?id=com.haarman.supertooltips  

1. Android ViewBadger  
爲其餘 View 添加角標(消息圓點)等  
項目地址:https://github.com/jgilfelt/android-viewbadger  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true  
效果圖:![Renderings](http://www.jeffgilfelt.com/viewbadger/vb-1a.png)  

1. SuperToasts  
更豐富樣式的 toast,支持 Button、Progress、Horizontal Progress 樣式、支持進入動畫、支持撤銷及其動畫設置  
項目地址:https://github.com/JohnPersano/SuperToasts  
Demo 地址:https://play.google.com/store/apps/details?id=com.supertoastsdemo  
效果圖:![Renderings](http://i1331.photobucket.com/albums/w597/JohnPersano/supertoasts_githubimage_zps8a5ceb7c.png)  

1. UndoBar  
屏幕底部顯示取消或是確認的 PopupWindows  
項目地址:https://github.com/soarcn/UndoBar  
效果圖:![Renderings](https://github.com/soarcn/UndoBar/blob/master/art/redo.png?raw=true)  

1. UndoBar  
屏幕底部顯示取消或是確認某操做  
項目地址:https://github.com/jenzz/Android-UndoBar  
效果圖:![Renderings](https://raw.github.com/jenzz/Android-UndoBar/master/assets/Screenshot2.png)  

1. Android-ActionItemBadge  
能夠在 ActionBar 的 MenuItem 上顯示一個小角標  
項目地址:https://github.com/mikepenz/Android-ActionItemBadge  
效果圖:![Renderings](https://raw.githubusercontent.com/mikepenz/Android-ActionItemBadge/master/DEV/screenshot/screenshot1_small.png)  

1. SnackBar  
Material Design 風格的 Toast,相似 Google inbox 中的提示  
項目地址:https://github.com/MrEngineer13/SnackBar  
Demo 地址:https://play.google.com/store/apps/details?id=com.mrengineer13.snackbar.sample  
效果圖:![Renderings](https://camo.githubusercontent.com/67a39af16f3d46631567c1f7bd7dcddeb3c4c9e9/687474703a2f2f6d6174657269616c2d64657369676e2e73746f726167652e676f6f676c65617069732e636f6d2f696d616765732f636f6d706f6e656e74732d746f617374732d73706563732d737065635f746f6173745f30335f315f6c617267655f6d6470692e706e67)  

1. HeadsUp  
在 2.3 上使用 android  5.0 的 HeadsUp 效果  
項目地址:https://github.com/zzz40500/HeadsUp  
效果圖:![Renderings](gif](//upload-images.jianshu.io/upload_images/166866-543a5d26ab71d0f6.gif)  

#### 12、FlipView
1. android-flip  
相似 Flipboard 翻轉動畫的實現  
項目地址:https://github.com/openaphid/android-flip  
Demo 地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true  
APP 示例:flipboard  

1. FlipImageView  
支持 x、y、z 及動畫選擇的翻轉動畫的實現  
項目地址:https://github.com/castorflex/FlipImageView  
Demo 地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview  

1. FoldableLayout  
Flip 翻轉效果的 ListView,目前還不支持 ListView 緩存  
項目地址:https://github.com/alexvasilkov/FoldableLayout  
Demo 地址:http://play.google.com/store/apps/details?id=com.alexvasilkov.foldablelayout.sample  

1. FlipViewPager.Draco  
Flip 翻轉效果的 ViewPager  
項目地址:https://github.com/Yalantis/FlipViewPager.Draco  
效果:![flip.gif](https://camo.githubusercontent.com/db312e031e5f5a445b548d35986b0498caa261d3/68747470733a2f2f6431337961637572716a676172612e636c6f756466726f6e742e6e65742f75736572732f3132353035362f73637265656e73686f74732f313735383239382f39396d696c65732d66696e642d667269656e64732d696e746572666163652d616e696d6174696f6e2e676966)  

#### 十3、ColorPickView
1. ColorPickerView  
顏色選擇器,支持 PopupWindows 或新的 Activity 中打開  
項目地址:https://code.google.com/p/color-picker-view/  
效果圖:![Renderings](http://oi41.tinypic.com/33c6mm8.jpg)  

1. HoloColorPicker  
顏色選擇器  
項目地址:https://github.com/LarsWerkman/HoloColorPicker  
Demo 地址:https://docs.google.com/file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit  

1. ColorPickerPreference  
顏色選擇器  
項目地址:https://github.com/attenzione/android-ColorPickerPreference  
效果圖:![Renderings](https://github.com/attenzione/android-ColorPickerPreference/raw/master/screen_2.png)  

1. ColorPicker  
顏色選擇器(Google Agenda 中的樣式風格)  
項目地址:https://github.com/flavienlaurent/colorpicker  
Demo 地址:https://raw.github.com/biboune/colorpicker/master/colorpicker-sample.apk  
效果圖:![Renderings](https://camo.githubusercontent.com/a42581e637ca379004855d69e262d85ea966fa35/68747470733a2f2f7261772e6769746875622e636f6d2f6269626f756e652f636f6c6f727069636b65722f6d61737465722f67726170686963732f696d67312e706e67)  

#### 十4、GraphView
1. MPAndroidChart  
強大的圖表繪製工具,支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、網狀圖等;支持圖的拖拽縮放;支持 Android 2.2 以上,支持橫縱軸縮放,多指縮放,展示動畫、高亮、保存到 sdcard、從文件讀取圖表  
項目地址:https://github.com/PhilJay/MPAndroidChart  
Demo 地址:https://play.google.com/store/apps/details?id=com.xxmassdeveloper.mpchartexample  
Demo 項目:https://github.com/PhilJay/MPAndroidChart/tree/master/MPChartExample  
效果圖:![Renderings](https://camo.githubusercontent.com/a9eaa5fc7fb6c1e70b22acd09385055e0f5c4fe7/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d5043686172742f6d61737465722f73637265656e73686f74732f73696d706c6564657369676e5f6c696e656368617274342e706e67)  
https://camo.githubusercontent.com/78b4bc4e50e151970961daf56e81c4c0db72d27c/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d5043686172742f6d61737465722f73637265656e73686f74732f73696d706c6564657369676e5f6261726368617274332e706e67  
https://camo.githubusercontent.com/65f51783ec05038730b481ed614b57a94e867d86/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d5043686172742f6d61737465722f73637265656e73686f74732f626172636861727432642e706e67  
https://camo.githubusercontent.com/f66a35bf430b12480d3e2ed8e3bc8d7a17db950f/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d5043686172742f6d61737465722f73637265656e73686f74732f626172636861727433642e706e67  
https://camo.githubusercontent.com/60bd0d71462ad577df775b956944b191e939728a/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d50416e64726f696443686172742f6d61737465722f73637265656e73686f74732f70696563686172745f686f6c657261646975735f73706163652e706e67  
https://camo.githubusercontent.com/6b254aa699df7f9464967009129c3017de721b77/68747470733a2f2f7261772e6769746875622e636f6d2f5068696c4a61792f4d50416e64726f696443686172742f6d61737465722f73637265656e73686f74732f7363617474657263686172742e706e67  
在線演示:https://www.youtube.com/watch?v=ufaK_Hd6BpI  

1. achartengine  
強大的圖表繪製工具,支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、撥號圖/表、立方線圖及各類圖的結合  
項目地址:https://code.google.com/p/achartengine/  
效果圖:![Renderings](http://www.achartengine.org/dimages/average_temperature.png)  
http://www.achartengine.org/dimages/sales_line_and_area_chart.png  
http://www.achartengine.org/dimages/temperature_range_chart.png  
http://www.achartengine.org/dimages/combined_chart.png  
http://www.achartengine.org/dimages/budget_chart.png  
官網網址:http://www.achartengine.org/  
APP 示例:Wordpress Android,Google Analytics  

1. GraphView  
繪製圖表和曲線圖的 View,可用於 Android 上的曲形圖、柱狀圖、波浪圖展現  
項目地址:https://github.com/jjoe64/GraphView  
Demo 項目:https://github.com/jjoe64/GraphView-Demos  
APP 示例:Wordpress Android,Google Analytics  

1. HoloGraphLibrary  
繪製現狀圖、柱狀圖、餅狀圖  
項目地址:https://bitbucket.org/danielnadeau/holographlibrary/src  
文檔介紹:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home  

1. XCL-Charts  
XCL-Charts 基於原生的 Canvas 來繪製各類圖表,在設計時,儘可能在保證開發效率的同時,給使用者提供足夠多的定製化能力。所以使用簡便,同時具備至關靈活的定製能力。目前支持 3D/非 3D 柱形圖(Bar Chart)、3D/非 3D 餅圖(Pie Chart)、堆積圖(Stacked Bar Chart)、面積圖(Area Chart)、 折線圖(Line Chart)、曲線圖(Spline Chart)、環形圖(Dount Chart)、南丁格爾玫瑰圖(Rose Chart)、儀表盤(Dial Chart)、刻度盤(Gauge Chart)、雷達圖(Radar Chart)、圓形圖(Circle Chart)等圖表。其它特性還包括支持圖表縮放、手勢移動、動畫顯示效果、高密度柱形顯示、圖表分界定製線、多圖表的混合顯示及同數據源不一樣類型圖表切換等。  
項目地址:https://github.com/xcltapestry/XCL-Charts  
Demo 地址:https://github.com/xcltapestry/XCL-Charts/blob/master/XCL-Charts-demo/bin/XCL-Charts-demo.apk?raw=true  

1. EazeGraph  
Android 圖表庫,支持柱狀圖、分層柱狀圖、餅狀圖、線性圖  
項目地址:https://github.com/blackfizz/EazeGraph  
Demo 地址:https://play.google.com/store/apps/details?id=org.eazegraph.app  

1. WilliamChart  
繪製圖表的庫,支持 LineChartView、BarChartView 和 StackBarChartView 三中圖表類型,而且支持 Android 2.2 及以上的系統。  
項目地址:https://github.com/diogobernardino/WilliamChart  
Demo 地址:https://play.google.com/store/apps/details?id=com.db.williamchartdemo  
Demo 項目:https://github.com/diogobernardino/WilliamChart/tree/master/sample  
效果圖:![Renderings](https://github.com/diogobernardino/WilliamChart/raw/master/art/linechart.gif)![Renderings](https://github.com/diogobernardino/WilliamChart/raw/master/art/barchart.gif)![Renderings](https://github.com/diogobernardino/WilliamChart/raw/master/art/stackbarchart.gif)  

1. HelloCharts for Android  
支持折線圖、柱狀圖、餅圖、氣泡圖、組合圖;支持預覽、放大縮小,滾動,部分圖表支持動畫;支持 Android 2.2 以上  
項目地址:https://github.com/lecho/hellocharts-android  
Demo 地址:https://play.google.com/store/apps/details?id=lecho.lib.hellocharts.samples  
在線演示:https://www.youtube.com/watch?v=xbSBjyjH2SY  

#### 十5、UI Style
不一樣樣式的系統 UI 風格,如 IOS、Bootstrap 風格  

1. UITableView  
ios 風格控件,包括 Button、ListView、TableView  
項目地址:https://github.com/thiagolocatelli/android-uitableview  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/ui-tableview-demo.apk?raw=true  

1. ATableView  
ios 風格控件  
項目地址:https://github.com/dmacosta/ATableView  
Demo 地址:https://play.google.com/store/apps/details?id=com.nakardo.atableview.demo  

1. Cards-UI  
卡片式 View,支持單個卡片,item 爲卡片的 ListView  
項目地址:https://github.com/afollestad/Cards-UI  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true  

1. cardslib  
卡片式 View,支持單個卡片,item 爲卡片的 ListView 和 GridView  
項目地址:https://github.com/gabrielemariotti/cardslib  
Demo 地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo  

1. Android-Bootstrap  
Bootstrap 風格的按鈕  
項目地址:https://github.com/Bearded-Hen/Android-Bootstrap  
效果圖:![Renderings](https://raw.github.com/Bearded-Hen/Android-Bootstrap/master/images/device_image.png)  

1. Material Design Android Library  
Android L 中 Material Design 風格的組件適配到 Android 2.2+  
項目地址:https://github.com/navasmdc/MaterialDesignLibrary  

1. Android FlatUI  
Android 扁平化風格的組件,支持一些自定義樣式  
項目地址:https://github.com/eluleci/FlatUI  
效果圖:![Renderings](https://camo.githubusercontent.com/590d4a2ac322417b71f83223bd58b83903d58343/68747470733a2f2f7261772e6769746875622e636f6d2f656c756c6563692f466c617455492f6d61737465722f73616d706c652d696d616765732f73686f77636173652e706e67)  

1. cheesesquare  
全新 Android 設計庫演示 Demo,包括 Collapsing Toolbar、FloatingActionButton、View anchoring、NavigationView、Snackbar  
項目地址:https://github.com/chrisbanes/cheesesquare  
效果圖:![Renderings](http://7xikfc.com1.z0.glb.clouddn.com/Screenshot_2015-07-17-12-22-07.png)  

#### 十6、其餘
1. SwipeBackLayout  
左右或向上滑動返回的 Activity  
項目地址:https://github.com/Issacw0ng/SwipeBackLayout  
Demo 地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo  
APP 示例:知乎  

1. android-styled-dialogs  
可自定義樣式的 dialog,默認與 Holo 主題樣式一致,在 Android2.2 以上同同樣式  
項目地址:https://github.com/inmite/android-styled-dialogs  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true  

1. Android Sliding Up Panel  
可拖動的 View,能在當前 Activity 上扶起一個可拖動的 Panel  
項目地址:https://github.com/umano/AndroidSlidingUpPanel  
Demo 地址:https://play.google.com/store/apps/details?id=com.sothree.umano  
APP 示例:Google Music 精簡播放欄  

1. TableFixHeaders  
第一列固定的 Table  
項目地址:https://github.com/InQBarna/TableFixHeaders  
Demo 地址:http://bit.ly/13buAIq  

1. Inscription  
可用於展現應用 change 和 new feature 信息  
項目地址:https://github.com/MartinvanZ/Inscription  

1. ActivityTransition  
Activity 切換動畫,包括漸變、flip、某個位置進入等等  
項目地址:https://github.com/ophilbert/ActivityTransition  
文檔介紹:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true  

1. EasyAndroidAnimations  
針對 View 的各類動畫  
項目地址:https://github.com/2359media/EasyAndroidAnimations  

1. ViewAnimation    
對android view 動畫進行封裝,實現起更簡單,自帶三種常見運動路徑,其餘的可自定義  
項目地址:https://github.com/guohuanwen/ViewAniamtion  
效果圖:![ViewAnimation](https://github.com/guohuanwen/ViewAniamtion/blob/master/sreenshots/AnimationGif.gif)  
APP 示例:QQ名片圈圈效果  

1. AndroidLoadingAnimation  
多種android加載動畫  
項目地址:https://github.com/guohuanwen/AndroidLoadingAnimation  
效果圖:![TaiJIView](https://github.com/guohuanwen/AndroidLoadingAnimation/blob/master/screenshots/taiji1.gif)  


1. android-lockpattern  
Android 的圖案密碼解鎖  
項目地址:https://code.google.com/p/android-lockpattern/  
原理剖析文檔:[android-lockpattern](http://a.codekk.com/detail/Android/愛早起/Android Lock Pattern 源碼解析)  
Demo 地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo  
文檔介紹:https://code.google.com/p/android-lockpattern/wiki/QuickUse  
APP 示例:Android 開機的圖案密碼解鎖,支付寶的密碼解鎖  

1. PatternLock  
另外一個 Android 圖案解鎖庫  
項目地址:https://github.com/DreaminginCodeZH/PatternLock  
Demo 地址:https://github.com/DreaminginCodeZH/PatternLock/raw/master/dist/sample.apk  
效果圖:![Renderings](https://github.com/DreaminginCodeZH/PatternLock/raw/master/image/sample_small.png)  
APP 示例:Android 開機的圖案密碼解鎖,支付寶的密碼解鎖  

1. RangeBar  
相似於 SeekBar,不一樣的是能夠選擇一個範圍內的值而不是單個值  
項目地址:https://github.com/edmodo/range-bar  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/range-bar-demo.apk?raw=true  
效果圖:![Renderings](http://i.imgur.com/q85GhRjl.png)  

1. ChromeView  
利用 Chromium 實現的 WebView,解決各個 Android 版本 WebView 不一樣的問題,同時利用最新 Chrome 代碼  
項目地址:https://github.com/pwnall/chromeview  

1. android-phased-seek-bar  
支持預先定義狀態的 SeekBar  
項目地址:https://github.com/ademar111190/android-phased-seek-bar  
效果圖:![Renderings](https://raw.githubusercontent.com/ademar111190/android-phased-seek-bar/master/images/sample.gif)  

1. Android Slider Preference Library  
可添加到設置中的基於對話框的 RankBar 小部件  
項目地址:https://github.com/jayschwa/AndroidSliderPreference  

1. ShowcaseView library  
用於高亮顯示應用程序的特定部分,從而突出突出重點  
項目地址:https://github.com/amlcurran/ShowcaseView  

1. android-segmented-control  
Android 上的 Segmented Controls,至關於 RadioButton 組  
項目地址:https://github.com/hoang8f/android-segmented-control  

1. Swipeable Cards  
相似 Tinder 的卡片效果,能夠加載圖片並動畫效果展現,向左滑動表示喜歡,向右表示不喜歡  
項目地址:https://github.com/kikoso/Swipeable-Cards  
Demo 地址:https://play.google.com/store/apps/details?id=info.hoang8f.fbutton.demo  

1. EdgeEffectOverride  
改變 ScrollView, ListView, ExpandableListView, GridView, ViewPager 等滾動控件滾動到邊緣的顏色效果  
項目地址:https://github.com/AndroidAlliance/EdgeEffectOverride  

1. android-pinned-header-listviews  
使 ExpandListView 的 Group 滑動到頂端時會固定不動直到另一個 Group 到達頂端  
項目地址:https://github.com/rtyley/android-pinned-header-listviews  

1. AndroidSwipeLayout  
滑動 Layout,支持單個 View,ListView,GridView  
項目地址:https://github.com/daimajia/AndroidSwipeLayout  
Demo 地址:[Download Demo](https://github.com/daimajia/AndroidSwipeLayout/releases/download/v1.0.0/AndroidSwipeLayout-Demo-1.0.1-snapshot.apk)  
效果圖:![Renderings](http://ww2.sinaimg.cn/mw690/610dc034jw1ejoplapwtqg208n0e74dx.gif)  

1. DynamicCardLayout  
在 Android 中實現的相似 Windows8 的瓷片佈局  
項目地址:https://github.com/dodola/DynamicCardLayout  
效果圖:![Renderings](https://github.com/dodola/DynamicCardLayout/blob/master/pic1.png?raw=true)  

1. Emoticons-Keyboard  
帶表情情符號的自定義鍵盤  
項目地址:https://github.com/chiragjain/Emoticons-Keyboard  
效果圖:![Renderings](https://github.com/chiragjain/Emoticons-Keyboard/raw/master/s2.png)  

1. Android Typeface Helper  
能夠幫你輕鬆實現自定義字體的庫  
項目地址:https://github.com/norbsoft/android-typeface-helper  
效果圖:![Renderings](https://camo.githubusercontent.com/b8e7d4f4ab84ff96a3919ea264e2a83aca46e04e/68747470733a2f2f7261772e6769746875622e636f6d2f6e6f7262736f66742f616e64726f69642d74797065666163652d68656c7065722f6d61737465722f726561646d655f73637265656e2e706e67)  

1. Android-Anim-Playground  
幾個動畫效果,其中第二個基於 android-svg 的繪製效果很是好  
項目地址:https://github.com/Tibolte/Android-Anim-Playground  
效果圖:![Renderings](https://raw.githubusercontent.com/Tibolte/Android-Anim-Playground/master/androiddemosvg.gif)  

1. AlertView
仿iOS的AlertViewController 幾乎完美還原iOS 的 AlertViewController ,同時支持Alert和ActionSheet模式,每個細節都是精雕細琢,並把api封裝成懶到極致模式,一行代碼就能夠進行彈窗.  
項目地址:https://github.com/saiwu-bigkoo/Android-AlertView  
效果圖:![Renderings](https://github.com/saiwu-bigkoo/Android-AlertView/blob/master/preview/alertviewdemo.gif)  

1. NiftyDialogEffects  
支持自定義飛入動畫樣式的 Dialog  
項目地址:https://github.com/sd6352051/NiftyDialogEffects  
效果圖:![Renderings](https://camo.githubusercontent.com/456687ac516bb07f1076928d635bfddf6b90d5ec/687474703a2f2f696d67302e70682e3132362e6e65742f69433436653162586b55316631724966555a6f3939773d3d2f363539373632303632313938343031393430382e676966)  
在線演示:http://tympanus.net/Development/ModalWindowEffects/  

1. PostOffice  
建立 Holo 及 Material Design 樣式的 Dialog  
項目地址:https://github.com/r0adkll/PostOffice  
效果圖:![Renderings](https://github.com/r0adkll/PostOffice/raw/master/images/po_2.png)  

1. Swipecards  
相似 Tinder 的卡片效果,能夠加載圖片並動畫效果展現,向左滑動表示喜歡,向右表示不喜歡,根據 Kikoso's Swipeable-Cards 改造而來  
項目地址:https://github.com/Diolor/Swipecards  

1. SeekArc  
圓形的 SeekBar  
項目地址:https://github.com/TriggerTrap/SeekArc  
效果圖:![Renderings](https://camo.githubusercontent.com/6a5091cb39a50d4c49b8d2f08684cb260db55aa7/68747470733a2f2f7261772e6769746875622e636f6d2f6e65696c643030312f5365656b4172632f6d61737465722f7261772f6172635f7377656570732e706e67)  

1. BlurDialogFragment  
顯示  DialogFragment 時背景模糊效果  
項目地址:https://github.com/tvbarthel/BlurDialogFragment  
Demo 地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.lib.blurdialogfragment.sample  

1. range-seek-bar  
隨機值選取的 SeekBar  
項目地址:https://github.com/yahoo/android-range-seek-bar  
效果圖:![Renderings](https://github.com/yahoo/android-range-seek-bar/raw/master/demo_screenshot.png)  

1. MaterialRangeBar  
能夠選擇一個範圍內的值而不是單個值的 SeekBar,RangeBar 的 Material Design 風格適配  
項目地址:https://github.com/oli107/material-range-bar  
效果圖:![Renderings](https://github.com/oli107/material-range-bar/raw/master/Screenshots/pin%20expand.gif)  

1. MaterialList  
Material Design 風格的 CardView  
項目地址:https://github.com/dexafree/MaterialList  
Demo 地址:https://play.google.com/store/apps/details?id=com.dexafree.materiallistviewexample  
效果圖:![Renderings](https://camo.githubusercontent.com/b71bb064807465b7c9132d7f6072e2064f01fb85/687474703a2f2f692e696d6775722e636f6d2f454e78554741772e706e67)  

1. road-trip  
設置 path 的各類動畫效果,以及如何實現複雜路徑動畫,相似於 ios 中的指紋註冊界面的指紋動畫效果  
項目地址:https://github.com/romainguy/road-trip  
效果圖:![Renderings](https://github.com/zhangxin1989/RoadTrip/raw/master/screenshot/Road-Trip-200.gif)  

1. dialogplus  
一個簡單的 Android 對話框,支持不一樣的彈出模式  
項目地址:https://github.com/orhanobut/dialogplus  
效果圖:![Renderings](https://github.com/nr4bt/dialogplus/raw/master/art/dialogplus.gif)  

1. FlowLayout  
一個簡單的流式佈局,用法相似 LinearLayout,可是可以讓子元素根據寬度自動換行  
項目地址:[FLowLayout](https://github.com/LyndonChin/AndroidFlowLayout)  
效果圖:![Renderings](http://img02.taobaocdn.com/imgextra/i2/160310864/TB2MH8.bVXXXXa3XXXXXXXXXXXX_!!160310864.png)  

1. CircleSeekbar  
一個環形Seekbar組件,支持疊加複合使用  
項目地址:[CircleSeekbar](https://github.com/feeeei/CircleSeekbar)  
效果圖:  
![Renderings](https://github.com/feeeei/CircleSeekbar/blob/master/gifs/withtext.gif)
![Renderings](https://github.com/feeeei/CircleSeekbar/raw/master/gifs/union.gif)

## 第二部分 工具庫
主要包括那些不錯的開發庫,包括依賴注入框架、圖片緩存、網絡請求、數據庫 ORM 建模、Android 公共庫、Android 高版本向低版本兼容、多媒體相關及其餘。  

#### 1、依賴注入 DI
經過依賴注入減小 View、服務、資源簡化初始化,事件綁定等重複繁瑣工做  

1. AndroidAnnotations(Code Diet)  
android 快速開發框架  
項目地址:https://github.com/excilys/androidannotations  
文檔介紹:https://github.com/excilys/androidannotations/wiki  
官網網址:http://androidannotations.org/  
特色:(1) 依賴注入:包括 view,extras,系統服務,資源等等  
(2) 簡單的線程模型,經過 annotation 表示方法運行在 ui 線程仍是後臺線程  
(3) 事件綁定:經過 annotation 表示 view 的響應事件,不用在寫內部類  
(4) REST 客戶端:定義客戶端接口,自動生成 REST 請求的實現  
(5) 沒有你想象的複雜:AndroidAnnotations 只是在在編譯時生成相應子類  
(6) 不影響應用性能:僅 50kb,在編譯時完成,不會對運行時有性能影響。  
其餘:與 roboguice 的比較:roboguice 經過運行時讀取 annotations 進行反射,因此可能影響應用性能,而 AndroidAnnotations 在編譯時生成子類,因此對性能沒有影響  

1. roboguice  
幫你處理了不少代碼異常,利用 annotation 使得更少的代碼完成項目  
項目地址:https://github.com/roboguice/roboguice  
文檔介紹:https://github.com/roboguice/roboguice/wiki  

1. butterknife  
利用 annotation 幫你快速完成 View 的初始化,減小代碼  
項目地址:https://github.com/JakeWharton/butterknife  
文檔介紹:http://jakewharton.github.io/butterknife/  

1. Dagger  
依賴注入,適用於 Android 和 Java  
項目地址:https://github.com/square/dagger  
原理剖析文檔:[Dagger](http://a.codekk.com/detail/Android/扔物線/Dagger 源碼解析)  
文檔介紹:http://square.github.io/dagger/  

#### 2、圖片緩存
1. Android-Universal-Image-Loader  
圖片緩存,目前使用最普遍的圖片緩存,支持主流圖片緩存的絕大多數特性。  
項目地址:https://github.com/nostra13/Android-Universal-Image-Loader  
原理剖析文檔:[Android-Universal-Image-Loader](http://a.codekk.com/detail/Android/huxian99/Android Universal Image Loader 源碼分析)  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/universal-imageloader-demo.apk?raw=true  
文檔介紹:http://www.intexsoft.com/blog/item/74-universal-image-loader-part-3.html  

1. picasso  
square 開源的圖片緩存  
項目地址:https://github.com/square/picasso  
文檔介紹:http://square.github.io/picasso/  
特色:(1)能夠自動檢測 adapter 的重用並取消以前的下載  
(2)圖片變換  
(3)能夠加載本地資源  
(4)能夠設置佔位資源  
(5)支持 debug 模式  

1. Cube ImageLoader  
阿里巴巴一淘使用的圖片加載,綜合了 Android-Universal-Image-Loader 和 square 等組件優勢,簡單易用,良好的中文文檔支持  
項目地址:https://github.com/etao-open-source/cube-sdk  
Demo 地址:https://github.com/liaohuqiu/cube-sdk/raw/master/cube-sdk-sample.apk  
文檔介紹:http://cube-sdk.liaohuqiu.net/  
效果圖:![Renderings](https://raw.githubusercontent.com/etao-open-source/cube-sdk/dev/screen-shot.png)  

1. fresco  
一款強大的圖片緩存工具,由 Facebook 開發  
項目地址:https://github.com/facebook/fresco  
文檔介紹:http://frescolib.org/  
特色:(1) 兩個內存緩存加上磁盤緩存構成了三級緩存  
(2) 支持流式,能夠相似網頁上模糊漸進式顯示圖片  
(3) 對多幀動畫圖片支持更好,如 Gif、WebP  
(4) 更多樣的顯示,如圓角、進度條、點擊重試、自定義對焦點  
(5) 更多樣的加載,如支持 EXIF、全面支持 WebP  
(6) 支持 Android 2.3+  

1. Glide  
Glide 是一個 android 平臺上的快速和高效的開源的多媒體資源管理庫,提供 多媒體文件的壓縮,內存和磁盤緩存, 資源池的接口。  
它能夠最大性能地在 Android 設備上讀取、解碼、顯示圖片和視頻。Glide 能夠將遠程的圖片、視頻、動畫圖片等緩存在設備本地便於提升用戶瀏覽圖片的流暢體驗。  
項目地址:https://github.com/bumptech/glide  
特色:  
(1) GIF 動畫的解碼  
(2) 本地視頻劇照的解碼  
(3) 支持縮略圖  
(4) Activity 生命週期的集成  
(5) 轉碼的支持  
(6) 動畫的支持  
(7) OkHttp 和 Volley 的支持  

#### 3、網絡請求
1. Volley  
Google 提供的網絡通訊庫,使得網絡請求更簡單、更快速  
項目地址:https://android.googlesource.com/platform/frameworks/volley  
文檔介紹:http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf  

1. Asynchronous Http Client for Android  
Android 異步 Http 請求  
項目地址:https://github.com/loopj/android-async-http  
文檔介紹:http://loopj.com/android-async-http/  
特色:(1) 在匿名回調中處理請求結果  
(2) 在 UI 線程外進行 http 請求  
(3) 文件斷點上傳  
(4) 智能重試  
(5) 默認 gzip 壓縮  
(6) 支持解析成 Json 格式  
(7) 可將 Cookies 持久化到 SharedPreferences  

1. android-query  
異步加載,更少代碼完成 Android 加載  
項目地址:https://github.com/androidquery/androidquery 或 https://code.google.com/p/android-query/  
Demo 地址:https://play.google.com/store/apps/details?id=com.androidquery  
文檔介紹:https://code.google.com/p/android-query/#Why_AQuery?  
特色:https://code.google.com/p/android-query/#Why_AQuery?  

1. Async Http Client  
Java 異步 Http 請求  
項目地址:https://github.com/AsyncHttpClient/async-http-client  
文檔介紹:http://sonatype.github.io/async-http-client/  

1. Ion  
支持圖片、json、http post 等異步請求  
項目地址:https://github.com/koush/ion  
文檔介紹:https://github.com/koush/ion#more-examples  

1. Http Request  
項目地址:https://github.com/kevinsawicki/http-request  
文檔介紹:https://github.com/kevinsawicki/http-request#examples  

1. okhttp  
square 開源的 http 工具類  
項目地址:https://github.com/square/okhttp  
文檔介紹:http://square.github.io/okhttp/  
特色:(1) 支持 SPDY( http://zh.wikipedia.org/wiki/SPDY )協議。SPDY 協議是 Google 開發的基於傳輸控制協議的應用層協議,經過壓縮,多路複用(一個 TCP 連接傳送網頁和圖片等資源)和優先級來縮短加載時間。  
(2) 若是 SPDY 不可用,利用鏈接池減小請求延遲  
(3) Gzip 壓縮  
(4) Response 緩存減小沒必要要的請求  

1. Retrofit  
RESTFUL API 設計  
項目地址:https://github.com/square/retrofit  
文檔介紹:http://square.github.io/retrofit/  

1. RoboSpice  
Android 異步網絡請求工具,支持緩存、REST 等等  
項目地址:https://github.com/stephanenicolas/robospice  
Demo 地址:https://github.com/stephanenicolas/RoboDemo/downloads  

1. TwistVolley  
TwistVolley 是對 Volley 的一個封裝庫。提供相似 Picasso 同樣的串聯式 API。使得使用 Volley 更加方便。  
項目地址:https://github.com/TwistedEquations/TwistVolley  

#### 4、數據庫 orm 工具包
orm 的 db 工具類,簡化建表、查詢、更新、插入、事務、索引的操做

1. greenDAO  
Android Sqlite orm 的 db 工具類  
項目地址:https://github.com/greenrobot/greenDAO  
文檔介紹:http://greendao-orm.com/documentation/  
官網網址:http://greendao-orm.com/  
特色:(1) 性能佳  
(2) 簡單易用的 API  
(3) 內存小好小  
(4) 庫大小小  

1. ActiveAndroid  
Android Sqlite orm 的 db 工具類  
項目地址:https://github.com/pardom/ActiveAndroid  
文檔介紹:https://github.com/pardom/ActiveAndroid/wiki/_pages  

1. Sprinkles  
Android Sqlite orm 的 db 工具類,比較顯著的特色就是配合 https://github.com/square/retrofit 能保存從服務器獲取的數據  
項目地址:https://github.com/emilsjolander/sprinkles  
文檔介紹:http://emilsjolander.github.io/blog/2013/12/18/android-with-sprinkles/  

1. Realm  
移動端的數據庫,適用於 Phone、Tablet、Wearable,支持 ORM,線程安全、支持連表及數據庫加密,比 SQLite 性能更好  
項目地址:https://github.com/realm/realm-java  
文檔介紹:http://realm.io/docs/java/0.72.0/  

1. ormlite-android  
項目地址:https://github.com/j256/ormlite-android  
文檔介紹:http://ormlite.com/sqlite_java_android_orm.shtml  

1. Schematic  
根據 SQLite 生成 ContentProvider  
項目地址:https://github.com/SimonVT/schematic  

1. DBFlow  
Android SQLite ORM 工具庫。綜合了 Active Android, Schematic, Ollie,Sprinkles 等庫的優勢;經過註解實現,性能好;能生成 ContentProvider。  
項目地址:https://github.com/Raizlabs/DBFlow  
文檔介紹:https://github.com/Raizlabs/DBFlow#usage-docs  

1. SnappyDB
SnappyDB是一個key-value數據庫,很是流行的NoSQL數據庫。
項目地址:https://github.com/nhachicha/SnappyDB
演示Demo:https://play.google.com/store/apps/details?id=com.snappydb.snippets.app
性能對比圖:
![Renderings](https://camo.githubusercontent.com/0f6193a1f84aa8a77d07ac18d3566b87bc89999b/687474703a2f2f736e6170707964622e636f6d2f696d672f62656e63686d61726b5f73716c6974655f776974685f7472616e73616374696f6e2e706e67)



#### 5、Android 公共庫
1. Guava  
Google 的基於 java1.6 的類庫集合的擴展項目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O 等等. 這些高質量的 API 可使你的 JAVa 代碼更加優雅,更加簡潔  
項目地址:https://code.google.com/p/guava-libraries/  
文檔介紹:https://code.google.com/p/guava-libraries/wiki/GuavaExplained  

1. AndroidCommon  
Android 公共庫  
項目地址:https://github.com/Trinea/AndroidCommon  
Demo 地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo  
文檔介紹:http://www.trinea.cn/android/android-common-lib/  
包括:a. ImageCache 圖片緩存,包含內存和 Sdcard 緩存  
http://www.trinea.cn/android/android-imagecache/  
特色:(1)支持預取新圖片,支持等待隊列  
(2)包含二級緩存,可自定義文件名保存規則  
(3)可選擇多種緩存算法(FIFO、LIFO、LRU、MRU、LFU、MFU 等 13 種)或自定義緩存算法  
(4)可方便的保存及初始化恢復數據  
(5)支持不一樣類型網絡處理  
(6)可根據系統配置初始化緩存等  

1. HttpCache Http 緩存  
文檔介紹:http://www.trinea.cn/android/android-http-cache  
特色是:(1) 根據 cache-control、expires 緩存 http 請求  
(2) 支持同步、異步 Http 請求  
(3) 在匿名回調中處理請求結果  
(4) 在 UI 線程外進行 http 請求  
(5) 默認 gzip 壓縮  
(2) 公共 View(下拉及底部加載更多 ListView、底部加載更多 ScrollView、滑動一頁 Gallery)  
(3) Android 經常使用工具類(網絡、下載、Android 資源操做、shell、文件、Json、隨機數、Collection 等等)  

1. DropDownListView 下拉刷新及滑動到底部加載更多 ListView  
文檔介紹:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/  

1. shipfaster  
整合了 Dagger Otto Retrofit Robolectric Picasso OkHttp,方便快速開發  
項目地址:https://github.com/pyricau/shipfaster  

1. CleanAndroidCode  
整合了 Dagger Otto AndroidAnnotations,方便快速開發  
項目地址:https://github.com/pyricau/CleanAndroidCode  

1. xUtils  
基於 Afinal,包含 DbUtils、ViewUtils、HttpUtils、BitmapUtils 四大模塊,可用於快速開發  
項目地址:https://github.com/wyouflf/xUtils  
原理剖析文檔:[xUtils](http://a.codekk.com/detail/Android/Caij/xUtils 源碼解析)  

1. Afinal  
Afinal 是一個 android 的 ioc,orm 框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。經過 finalActivity,咱們能夠經過註解的方式進行綁定 ui 和事件。經過 finalBitmap,咱們能夠方便的加載 bitmap 圖片,而無需考慮 oom 等問題。經過 finalDB 模塊,咱們一行代碼就能夠對 android 的 sqlite 數據庫進行增刪改查。經過 FinalHttp 模塊,咱們能夠以 ajax 形式請求 http 數據  
項目地址:https://github.com/yangfuhai/afinal  
官網網址:http://www.afinal.org  

1. UltimateAndroid  
UltimateAndroid 是一個快速開發 Android 應用的框架,框架目前主要包含的功能有 View Injection,ORM,異步網絡請求和圖片加載,自動化腳本測試,磁盤 LRU 等功能.同時提供了相似於 TripleDes、Webview 快速設置、Md5 處理、String 處理,Https 處理等經常使用工具類,還有超過 100 多種 UI 控件效果。  
項目地址:https://github.com/cymcsg/UltimateAndroid  
官網網址:http://blog.marshalchen.com/UltimateAndroid/  

1. SAF  
SAF(Simple Android Framework)是一個簡單的 android 框架,它爲開發 Android app 提供了基礎性組件。  
項目地址:https://github.com/fengzhizi715/SAF  
官網網址:http://www.salesuite.cn/  
包括:(1)Event Bus(事件總線)  
(2) Rest Client(http 的框架)  
(3) Image Cache(圖片緩存)  
(4) Dependency Injection(依賴注入)  
(5) Sqlite ORM(sqlite 的 orm)  
(6) Router(Activity、Fragment 的 Router)  
(7) Utils(各類經常使用的工具類)  

1. Barber  
Custom View 神器。經過簡單的註解幫助你大大減小 Custom View 中的代碼量。因爲和 ButterKnife 同樣使用了 Annotation Proccessor ,因此對程序性能沒有影響。  
項目地址:https://github.com/hzsweers/barber  

1. device-year-class  
A library that analyzes an Android device's specifications and calculates which year the device would be considered "high end」.(facebook 開發的檢測手機主流配置工具)  
項目地址:https://github.com/facebook/device-year-class  

1. RxAndroid   
對RxJava在Android上的擴展,使得Android上也很容易實現reactive components,簡化線程操做,從而寫出很漂亮的代碼。   
項目地址:https://github.com/ReactiveX/RxAndroid   
文檔介紹:[給Android 開發者的 RxJava 詳解](http://gank.io/post/560e15be2dca930e00da1083)   

#### 6、Android 高版本向低版本兼容
1. Nine Old Androids  
將 Android 3.0(Honeycomb)全部動畫 API(ObjectAnimator ValueAnimator 等)兼容到 Android1.0  
項目地址:https://github.com/JakeWharton/NineOldAndroids  
原理剖析文檔:[Nine Old Androids](http://a.codekk.com/detail/Android/Mr.Simple/NineOldAnimations 源碼解析)  
Demo 地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample  
文檔介紹:http://nineoldandroids.com/  

1. HoloEverywhere  
將 Android 3.0 的 Holo 主題兼容到 Android2.1++  
項目地址:https://github.com/Prototik/HoloEverywhere  
Demo 地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk  
文檔介紹:http://android-developers.blogspot.com/2012/01/holo-everywhere.html  

1. SherlockNavigationDrawer  
將 Android NavigationDrawer 和 ActionbarSherlock 結合,解決 4.0 如下 NavigationDrawer 的適配問題  
項目地址:https://github.com/tobykurien/SherlockNavigationDrawer  
文檔介紹:http://developer.android.com/training/implementing-navigation/nav-drawer.html  

1. Notifications4EveryWhere  
將 Android 4.1 的 Notification 兼容到 Android2.2++  
項目地址:https://github.com/youxiachai/Notifications4EveryWhere  

1. Android Switch Widget Backport  
將 Android Switch 和 SwitchPreference 的兼容到 Android2.1++  
項目地址:https://github.com/BoD/android-switch-backport  
Demo 地址:https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample  
文檔介紹:https://github.com/BoD/android-switch-backport#using-the-switch  

1. android-datepicker  
將 Android 4.0 的 datepicker 兼容到 Android2.2++  
項目地址:https://github.com/SimonVT/android-datepicker  

1. Transitions Everywhere  
Android 4.4 的 Transitions API 兼容到 Android 2.2 以上  
項目地址:https://github.com/andkulikov/transitions-everywhere  

#### 7、多媒體相關
1. cocos2d-x  
跨平臺的 2d 遊戲框架,支持 Android、IOS、Linux、Windows 等衆多平臺  
項目地址:https://github.com/cocos2d/cocos2d-x  
文檔介紹:http://www.cocos2d-x.org/wiki  
官網網址:http://www.cocos2d-x.org/  

1. Vitamio  
是一款 Android 與 iOS 平臺上的全能多媒體開發框架  
項目地址:https://github.com/yixia/VitamioBundle  
網站介紹:http://www.vitamio.org/docs/  
特色:(1) 全面支持硬件解碼與 GPU 渲染  
(2) 可以流暢播放 720P 甚至 1080P 高清 MKV,FLV,MP4,MOV,TS,RMVB 等常見格式的視頻  
(3) 在 Android 與 iOS 上跨平臺支持 MMS, RTSP, RTMP, HLS(m3u8)等常見的多種視頻流媒體協議,包括點播與直播。

1. VDPlayerSDK  
最容易集成的開源播放器組件,支持直播,支持軟硬解切換,支持清晰度切換  
項目地址:https://github.com/SinaVDDeveloper/  
Demo 地址:https://github.com/SinaVDDeveloper/demo  
文檔介紹:https://github.com/SinaVDDeveloper/sinavideo_playersdk  
特色:  
(1) 使用自定義控件方式提供播放器UI,不須要視頻相關知識,能編寫android應用就能使用  
(2) 軟硬解切換、點播直播支持  
(3) 解碼內核小於4M,更方便集成到非專業視頻app中  
(4) 修正一些vitaimio的問題,好比m3u8能夠拖動等等  

1. PhotoProcessing  
利用 ndk 處理圖片庫,支持 Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate(旋轉)、Flip(翻轉)等各類特效  
項目地址:https://github.com/lightbox/PhotoProcessing  
Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true  

1. Android StackBlur  
圖片模糊效果工具類  
項目地址:https://github.com/kikoso/android-stackblur  
Demo 地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true  
文檔介紹:https://github.com/kikoso/android-stackblur#usage  

1. Bitmap Smart Clipping using OpenCV  
圖片智能裁剪保留重要部分顯示  
項目地址:https://github.com/beartung/tclip-android  
利用淘寶的 http://code.taobao.org/p/tclip/ 庫完成  
一淘玩客正在使用的圖片裁剪,自動識別圖片中的重要區域,而且在圖片裁剪時保留重要區域  
特色:(1). 能進行人臉識別。圖片中有人臉,將自動視爲人臉區域爲重要區域,將不會被裁剪掉  
(2).自動其它重要區域。若是圖片中未識別出人臉,則會根據特徵分佈計算出重區域  

1. Cropper  
圖片局部剪切工具,可觸摸控制選擇區域或旋轉  
項目地址:https://github.com/edmodo/cropper  
文檔介紹:https://github.com/edmodo/cropper/wiki  
效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/e4fde77bf41d4a60b234b4e268e5cfa8c17d9b6f/687474703a2f2f692e696d6775722e636f6d2f334668735467666c2e6a7067)  

1. android-crop  
圖片裁剪 Activity  
項目地址:https://github.com/jdamcd/android-crop  
效果圖:![Renderings](https://github.com/jdamcd/android-crop/raw/master/screenshot.png)  

1. TileView  
可分塊顯示大圖,支持 2D 拖動、雙擊、雙指放大、雙指捏合  
項目地址:https://github.com/moagrius/TileView  
Demo 地址:http://moagrius.github.io/TileView/TileViewDemo.apk  

1. BlurEffectForAndroidDesign  
圖片模糊效果  
項目地址:https://github.com/PomepuyN/BlurEffectForAndroidDesign  

1. android-eye  
PC 端網頁查看同一局域網內的手機攝像頭內容,能夠用來監控哦  
項目地址:https://github.com/Teaonly/android-eye  
Demo 地址:https://play.google.com/store/apps/details?id=teaonly.droideye  

1. libpng for Android  
PNG 圖片的 jni 庫,支持幾乎 png 的全部特性  
項目地址:https://github.com/julienr/libpng-android  
文檔介紹:http://www.libpng.org/pub/png/libpng.html  

1. android-gpuimage  
基於 GPU 的圖片濾鏡  
項目地址:https://github.com/CyberAgent/android-gpuimage  

1. AndroidFaceCropper  
圖片臉部自動識別,將識別後的局部圖片返回  
項目地址:https://github.com/lafosca/AndroidFaceCropper  

1. Android Video Crop  
利用 TextureView 播放和剪切視頻,相似 ImageView.setScaleType  
項目地址:https://github.com/dmytrodanylyk/android-video-crop  
Demo 地址:https://github.com/lafosca/AndroidFaceCropper/releases/download/1.0/FaceCropper-sample-debug-unaligned.apk  

1. svg-android  
Android Svg 矢量圖形支持  
項目地址:https://github.com/japgolly/svg-android https://github.com/japgolly/svg-android  

1. Android Visualizer  
從 Android MediaPlayer 得到音頻,而後像 iTunes 及 WinAmp 同樣展現音軌  
項目地址:https://github.com/felixpalmer/android-visualizer  

1. ExoPlayer  
包括儀表板和 SmoothStreaming 自適應回放,緩存持久化和自定義渲染器,方便自定義和擴展,而且能夠經過應用商店更新  
項目地址:https://github.com/google/ExoPlayer  

1. DanmakuFlameMaster  
android 上開源彈幕解析繪製引擎項目  
項目地址:https://github.com/ctiao/DanmakuFlameMaster  

#### 8、事件總線(訂閱者模式)
經過發佈/訂閱事件解耦事件發送和接受,從而簡化應用程序組件(Activities, Fragments 及後臺線程)之間的通訊  

1. EventBus  
greenrobot 的開源項目  
項目地址:https://github.com/greenrobot/EventBus  
原理剖析文檔:[EventBus](http://a.codekk.com/detail/Android/Trinea/EventBus 源碼解析)  
文檔介紹:https://github.com/greenrobot/EventBus#general-usage-and-api  
特色:(1) 支持在不一樣類型的線程中處理訂閱,包括髮布所在線程,UI 線程、單一後臺線程、異步線程  
(2) 支持事件優先級定義,支持優先級高的訂閱者取消事件繼續傳遞,支持粘性事件,是否是跟系統的有序廣播、粘性廣播很像啊  
(3) 不是基於 annotations  
(4) 性能更優  
(5) 體積小  
(6) 支持單例建立或建立多個對象  
(7) 支持根據事件類型訂閱  

1. Otto  
Square 的開源項目,基於 Guava 的 Android 優化  
項目地址:https://github.com/square/otto  
文檔介紹:http://square.github.io/otto/  
[EventBus 與 Otto 的功能及性能對比文檔](https://github.com/greenrobot/EventBus#comparison-with-squares-otto)  
[EventBus 與 Otto 性能對比 Demo Apk](https://play.google.com/store/apps/details?id=de.greenrobot.eventperf)  

#### 9、傳感器
1. Great Android Sensing Toolkit  
Android 感應器工具包,包含示例及使用過程當中可能須要的算法  
項目地址:https://github.com/gast-lib/gast-lib  
Demo 地址:https://play.google.com/store/apps/details?id=root.gast.playground  
文檔介紹:https://github.com/gast-lib/gast-lib#documentation  

1. SensorManager  
Android 傳感器管理  
項目地址:https://github.com/nlathia/SensorManager  
文檔介紹:https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit  

1. GPSLogger  
記錄 GPS 信息  
項目地址:https://github.com/mendhak/gpslogger  
Demo 地址:https://play.google.com/store/apps/details?id=com.mendhak.gpslogger  
文檔介紹:http://code.mendhak.com/gpslogger/  

1. Pedometer  
計步器,使用硬件計步感應器  
項目地址:https://github.com/j4velin/Pedometer  

1. leapcast  
ChromeCast 模擬器的 App  
項目地址:https://github.com/dz0ny/leapcast  

1. Arduino-Communicator  
與 Arduino 通訊的 App  
項目地址:https://github.com/jeppsson/Arduino-Communicator  

1. android-pedometer  
Android 計步器  
項目地址:https://github.com/bagilevi/android-pedometer  
Demo 地址:http://pedometer.googlecode.com/files/Pedometer-1.4.apk  

1. OwnTracks for Android  
本身的軌跡記錄  
項目地址:https://github.com/owntracks/android  

1. Shake Detector library for Android  
Android 手機震動搖晃檢測庫,提供供 UI 線程調用的回調接口  
項目地址:https://github.com/tbouron/ShakeDetector  
Demo 地址:https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example  

1. Android heart rate monitor  
Android 心跳檢測  
項目地址:https://github.com/phishman3579/android-heart-rate-monitor  

1. Bluetooth LE Library for Android  
藍牙源信息,包括寶庫 Mac、更新時間、RSSI、UUID、信號源距離、影響範圍等信息  
項目地址:https://github.com/alt236/Bluetooth-LE-Library---Android  
Demo 地址:https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan  

1. farebot  
經過 NFC 從公交卡中讀取數據的一個應用  
項目地址:https://github.com/codebutler/farebot  

#### 10、安全
1. SQLCipher  
Sqlite 加密工具  
項目地址:https://github.com/sqlcipher/sqlcipher  
文檔介紹:http://sqlcipher.net/sqlcipher-for-android/  

1. Conceal  
快速高效的進行文件加密解密  
項目地址:https://github.com/facebook/conceal  
文檔介紹:https://github.com/facebook/conceal#usage  

1. Android-PasscodeLock  
應用鎖,每次啓動或從任何 Activity 啓動應用都須要輸入四位數字的密碼方可進入  
項目地址:https://github.com/wordpress-mobile/Android-PasscodeLock  
Demo 地址:https://play.google.com/store/apps/details?id=org.wordpress.android  
APP 示例:Wordpress Android,支付寶,挖財  

1. GlowPadBackport  
將 Android4.2 的鎖屏界面解鎖擴展到 Android1.6 及 1.6+  
項目地址:https://github.com/rock3r/GlowPadBackport  
Demo 地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample  
效果圖:![Renderings](https://lh6.ggpht.com/U070b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw)  

1. GlowPadView  
Android 4 鎖屏界面解鎖  
項目地址:https://github.com/nadavfima/GlowPadView  
效果圖:![Renderings](https://raw.github.com/nadavfima/GlowPadView/master/example.png)  

1. Android-InsecureBank  
關於 Android 不安全性的示例  
項目地址:https://github.com/dineshshetty/Android-InsecureBankv2  

#### 11、插件化
更多見:[Android 插件化做用、概念以及不錯的資料(包括開源項目)和解決方案](http://www.trinea.cn/android/android-plugin/)  

1. dynamic-load-apk  
Android 動態加載 Apk,熱部署,利用 ClassLoader 以及 Activity 代理的方式解決  
項目地址:https://github.com/singwhatiwanna/dynamic-load-apk  
原理剖析文檔:[dynamic-load-apk](http://a.codekk.com/detail/Android/FFish/DynamicLoadApk 源碼解析)  
文檔介紹:http://blog.csdn.net/singwhatiwanna/article/details/22597587  

1. Android Dynamic Loader  
點評的實現方式,和上面不一樣的是:他不是用代理 Activity 的方式實現而是用 Fragment 以及 Schema 的方式實現  
項目地址:https://github.com/mmin18/AndroidDynamicLoader  
Demo 地址:https://github.com/mmin18/AndroidDynamicLoader/raw/master/host.apk  

1. xCombine  
Android App 插件式插件開發,插件必須先安裝,更推薦看上面兩個開源項目  
項目地址:https://github.com/wyouflf/xCombine  
文檔介紹:http://my.oschina.net/u/1171837/blog/155377  

1. Android Plugin Framework  
Android 插件式開發,開放的源碼目前不完整  
項目地址:https://github.com/umeng/apf  

1. Android OpenAtlas  
Android插件框架,基於OSGI,非代理方式,組件須要在宿主中聲明  
項目地址:https://github.com/bunnyblue/OpenAtlas  
Demo 地址:https://github.com/bunnyblue/OpenAtlasExtension/blob/master/Dist/OpenAtlasLauncher.apk

1. multidex  
安裝多 dex 的 classloader  
項目地址:https://github.com/casidiablo/multidex  

1. ANR-WatchDog  
Android ANR 監聽,經過監聽本身的 UI Thread 是否被執行肯定是否發生了 ANR,並能夠設置相關事件  
項目地址:https://github.com/SalomonBrys/ANR-WatchDog  

#### 12、文件
對不一樣文檔類型的處理,包括 PDF、Word、EPub、Html、Zip 等  

1. purePDF  
容許從任何運行的 SWF 文件讀取和建立 PDF 文檔  
項目地址:https://github.com/sephiroth74/purePDF  

1. android-pdfview  
快速解析 pdf 的 view,默認支持手勢縮放和相關動畫  
項目地址:https://github.com/JoanZapata/android-pdfview  

1. Office 365 SDK for Android Preview  
可支持 Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail  
項目地址:https://github.com/OfficeDev/Office-365-SDK-for-Android  

1. OpenSpritz-Android  
EPub 閱讀器  
項目地址:https://github.com/OnlyInAmerica/OpenSpritz-Android  

1. jsoup  
一個解析 html 的 java 庫,可方便的提取和操做數據  
項目地址:https://github.com/jhy/jsoup  
官網網址:http://jsoup.org/  
做用:(1) 從一個 url、文件或 string 得到 html 並解析  
(2) 利用 dom 遍歷或 css 選擇器查找、提取數據  
(3) 操做 html 元素  
(4) 根據白名單去除用於提交的非法數據防止 xss 攻擊  
(5) 輸出整齊的 html  

1. ZIP  
java 壓縮和解壓庫  
項目地址:https://github.com/zeroturnaround/zt-zip  
文檔介紹:https://github.com/zeroturnaround/zt-zip#examples  
做用:(1) 解壓和壓縮,並支持文件夾內遞歸操做  
(2) 支持包含和排除某些元素  
(3) 支持重命名元素  
(4) 支持遍歷 zip 包內容  
(5) 比較兩個 zip 包等功能  

1. Image File Selector  
輕量級的圖片文件選擇器,用系統api選取,壓縮和裁切圖片,能夠方便的得要指定尺寸的圖片  
項目地址:https://github.com/sw926/ImageFileSelector  
    
#### 十3、其餘
1. Salvage view  
帶 View 緩存的 Viewpager PagerAdapter,很方便使用  
項目地址:https://github.com/JakeWharton/salvage  

1. Android Priority Job Queue  
Android 後臺任務隊列  
項目地址:https://github.com/path/android-priority-jobqueue  
文檔介紹:https://github.com/path/android-priority-jobqueue#getting-started  

1. Cobub Razor  
開源的 mobile 行爲分析系統,包括 web 端、android 端,支持 ios 和 window phone  
項目地址:https://github.com/cobub/razor  
Demo 地址:http://demo.cobub.com/razor  
官網網址:http://dev.cobub.com/  

1. Countly  
Android 移動端數據採集分析系統  
項目地址:https://github.com/Countly/countly-sdk-android  
官網網址:https://count.ly/  

1. aFileChooser  
文件選擇器,可內嵌到程序中,而無需使用系統或三方文件選擇器。  
項目地址:https://github.com/iPaulPro/aFileChooser  

1. androidpn  
基於 xmpp 協議的消息推送解決方案,包括服務器端和 android 端。  
項目地址:https://github.com/dannytiehui/androidpn  

1. Bolts  
Android 的異步編程模式  
項目地址:https://github.com/BoltsFramework/Bolts-Android/  
與 AsyncTask 比較:(1) 使用的是無大小限制的線程池  
(2) 任務可組合可級聯,防止了代碼耦合  

1. CastCompanionLibrary-android  
使 Android 程序中更快的接入 Google Cast  
項目地址:https://github.com/googlecast/CastCompanionLibrary-android  
文檔介紹:https://developers.google.com/cast/  

1. CastVideos-android  
從 Android 設備分享 Video 經過 Google Cast  
項目地址:https://github.com/googlecast/CastVideos-android  
文檔介紹:https://developers.google.com/cast/  

1. Uninstall_Statics  
Android 應用自身被卸載監聽及打開瀏覽器等反饋功能實現  
項目地址:https://github.com/sevenler/Uninstall_Statics  
文檔介紹:http://www.cnblogs.com/zealotrouge/p/3157126.html  http://www.cnblogs.com/zealotrouge/p/3159772.html  
1. Memento  
保證在系統配置改變時,Activity 中的某些數據能夠簡單安全的保持不變  
項目地址:https://github.com/mttkay/memento  
文檔介紹:https://github.com/mttkay/memento#usage  

1. FreeFlow  
佈局引擎,更簡單的建立自定義佈局,而且當數據和佈局改變時更美觀的過渡動畫  
項目地址:https://github.com/Comcast/FreeFlow  
Demo 地址:https://github.com/Comcast/FreeFlow/releases  

1. Android Gesture Detectors Framework  
Android 手勢框架,支持雙指旋轉、移動、平移、縮放等  
項目地址:https://github.com/Almeros/android-gesture-detectors  

1. Mapbox Android SDK  
Android Map 的替代版  
項目地址:https://github.com/mapbox/mapbox-android-sdk  

1. Activity animation  
Activity 跳轉動畫,支持各個方向波浪的效果  
項目地址:https://github.com/flavienlaurent/activityanimation  
在線演示:https://www.youtube.com/watch?v=-E0sc6w_Jck  

1. KryoNet  
經過 NIO 提供客戶端和服務器端 TCP/UDP 網絡傳輸的 Java 庫  
項目地址:https://github.com/EsotericSoftware/kryonet  

1. Rebound  
一個模仿彈簧反彈的 Java 庫,可用於建立動畫  
項目地址:https://github.com/facebook/rebound  

1. Android Social Networks  
社交網絡接入統一管理器,可方便的從 Twitter, LinkedIn, Facebook, Google Plus 登錄、得到我的信息、發送消息、發送專篇、添加或刪除好友  
項目地址:https://github.com/antonkrasov/AndroidSocialNetworks  
Demo 地址:https://play.google.com/store/apps/details?id=com.github.androidsocialnetworks.apidemos  

1. SmartAppUpdates  
Android App 增量升級,包含先後端方案、Demo、以及 so 庫,可用於商店或大致積 App 差分升級  
項目地址:https://github.com/cundong/SmartAppUpdates  

1. Magnet  
建立相似 Facebook 聊天桌面懸浮窗的效果  
項目地址:https://github.com/premnirmal/Magnet  

1. AcDisplay  
將 Android 的通知都集中到鎖屏顯示  
項目地址:https://github.com/AChep/AcDisplay  
Demo 地址:https://play.google.com/store/apps/details?id=com.achep.acdisplay  

1. QrCodeScan  
ZXing 和 ZBar 結合的二維碼掃描項目,提升了掃描效率  
項目地址:https://github.com/SkillCollege/QrCodeScan  
效果圖:![Renderings](http://www.eoeandroid.com/data/attachment/forum/201405/09/124538vteuz4leptgg1te6.png)  

1. Android-ScreenShot  
實現 android 系統截屏功能  
項目地址:https://github.com/Android-ScreenShot/AndroidScreenShotService  
文檔介紹:http://blog.csdn.net/buptgshengod/article/details/39155979  

1. card.io SDK for Android  
信用卡掃描 Android SDK  
項目地址:https://github.com/card-io/card.io-Android-SDK  
Demo 項目:https://github.com/card-io/card.io-Android-SDK/tree/master/SampleApp  

1. ASNE  
Twitter, Facebook, Google Plus, LinkedIn, Instagram, Vkontakte, Odnoklassniki 的集成庫,包括他們的大多數功能  
項目地址:https://github.com/gorbin/ASNE  
Demo 地址:https://play.google.com/store/apps/details?id=com.gorbin.androidsocialnetworksextended.asne  

1. Android Signature Pad  
Android 自定義的簽名 View,可自定義筆顏色和大小  
項目地址:https://github.com/gcacace/android-signaturepad  
Demo 項目:https://github.com/gcacace/android-signaturepad/tree/master/SignaturePad-Example  

1. Teleport  
Android Wear 數據同步和消息傳送庫  
項目地址:https://github.com/Mariuxtheone/Teleport  

1. DebugLog  
能夠幫你建立更簡單和更容易理解的調試日誌,可以友好的顯示調試信息所在類和函數。  
項目地址:https://github.com/MustafaFerhan/DebugLog  
效果圖:![Renderings](https://camo.githubusercontent.com/37deffede9f9b185886da48e96a4829ebd407260/68747470733a2f2f7261772e6769746875622e636f6d2f4d75737461666146657268616e2f44656275674c6f672f6d61737465722f44656275674c6f672d44656d6f2f6173736574732f7373322e6a7067)  

1. Logger  
簡單、美觀並且十分強大的 Android 日誌工具  
項目地址:https://github.com/orhanobut/logger  
Demo 地址:https://github.com/orhanobut/logger/tree/master/app  
效果圖:![Renderings](https://github.com/orhanobut/logger/blob/master/images/description.png)  

1. Phrase  
square 組開源大牛寫的字符串替換類  
項目地址:https://github.com/square/phrase  

1. ColorPhrase  
模仿 phrase 寫的對字符串個別字符顏色改變的類,高效強大!  
項目地址:https://github.com/THEONE10211024/ColorPhrase  
效果圖:![Renderings](https://github.com/THEONE10211024/ColorPhrase/blob/master/screenshot/Screenshot_2015-05-16-18-12-23.jpeg)  

1. PinyinSearch  
一個爲 T9 搜索和 Qwerty 搜索,提供數據解析與匹配等方法的拼音搜索 java 庫。  
項目地址: https://github.com/handsomezhou/PinyinSearchLibrary  
Demo 地址: [ContactsSearch](https://github.com/handsomezhou/PinyinSearchLibrary/blob/master/external_res/bin/ContactsSearch.apk?raw=true)    [AppSearch](https://github.com/handsomezhou/PinyinSearchLibrary/blob/master/external_res/bin/AppSearch.apk?raw=true)  
效果圖:![Renderings](https://github.com/handsomezhou/PinyinSearchLibrary/blob/master/external_res/image/ContactsSearch.gif)  
APP 示例: 通信錄應用,微信電話本  

1. PrainView  
PaintView 是一個畫圖工具:  
可直接使用設定按鈕來實現已擁有的方法,且拓展性強  
基礎功能:更換顏色、更換橡皮、以及更換橡皮和筆的粗細、清屏、倒入圖片  
特殊功能:保存畫筆軌跡幀動畫、幀動畫導入導出、ReDo和UnDo  
項目地址:[Paintview](https://github.com/lfkdsk/JustWeTools)  
效果圖:![p1](https://github.com/lfkdsk/JustWeTools/blob/master/picture/gif.gif)  
        ![p2](https://github.com/lfkdsk/JustWeTools/blob/master/picture/io.gif)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/DrawAPicture.apk)  
原理解析:[PaintView 繪圖控件解析](http://www.cnblogs.com/lfk-dsk/p/4768850.html)  

1. CodeView  
CodeView代碼查看/修改工具: 基於WebView製做的代碼編輯器,實現代碼高亮,暗色主題  
項目地址:[CodeView](https://github.com/lfkdsk/JustWeTools)  
效果圖:![p3](https://github.com/lfkdsk/JustWeTools/blob/master/picture/accomplish.png)  
        ![p4](https://github.com/lfkdsk/JustWeTools/blob/master/picture/edit.png)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/JustWeTools.apk)  

1. ExplorerView  
文件瀏覽器:繼承自ListView,可拓展性強,可進行文件類型分析  
項目地址:[CodeView](https://github.com/lfkdsk/JustWeTools)  
效果圖:![p5](https://github.com/lfkdsk/JustWeTools/blob/master/picture/explorer1.png)  
![p6](https://github.com/lfkdsk/JustWeTools/blob/master/picture/explorer2.png)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/JustWeTools.apk)  

1. ReadView  
小說閱讀器,支持文字字體、顏色、背景、進度等多種調整,支持一鍵設置。  
項目地址:[ReadView](https://github.com/lfkdsk/JustWeTools)  
效果圖:![p7](https://github.com/lfkdsk/JustWeTools/blob/master/picture/readbook.png)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/JustWeTools.apk)  

1. MarkDownView  
支持MarkDown語法的渲染器,基於WebView的MarkDown渲染器,支持標準化的MarkDown語法,
調用接口和CodeView保持一導致用簡便  
項目地址:[ReadView](https://github.com/lfkdsk/JustWeTools)  
效果圖:![markdown](https://github.com/lfkdsk/JustWeTools/blob/master/picture/markdown.png)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/JustWeTools.apk)  

1. VerTextView豎行排版的TextView:  
支持豎行排版,添加了下劃線功能,開啓簡便,下劃線粗細、顏色、間距都可自定義,  
接口調用方式與TextView類似,使用簡便。  
項目地址:[ReadView](https://github.com/lfkdsk/JustWeTools)  
效果圖:![vertextview](https://github.com/lfkdsk/JustWeTools/blob/master/picture/VerTextView.png)  
demo地址:[apk地址](https://github.com/lfkdsk/JustWeTools/blob/master/demo/JustWeTools.apk)  

## 第三部分 優秀項目
主要介紹那些 Android 還不錯的完整項目,目前包含的項目主要依據是項目有意思或項目分層規範比較好。  

#### 1、系統及平臺
1. Linux  
項目地址:https://github.com/torvalds/linux  
1. Android  
項目地址:https://android.googlesource.com/  

#### 2、項目
1. ZXing  
二維碼掃描工具  
項目地址:https://github.com/zxing/zxing 或 https://code.google.com/p/zxing/  
APK 地址:https://play.google.com/store/apps/details?id=com.google.zxing.client.android  
其餘:如今市面上不少應用的二維碼掃描功能都是從這個修改而來  

1. photup  
編輯機批量上傳照片到 facebook 上  
項目地址:https://github.com/chrisbanes/photup  
APK 地址:https://play.google.com/store/apps/details?id=uk.co.senab.photup  
其餘:代碼分包合理,很棒。不過這個項目依賴的開源項目比較多,比較難編譯  

1. github-android  
Github 的 Android 客戶端項目  
項目地址:https://github.com/github/android  
APK 地址:https://play.google.com/store/apps/details?id=com.github.mobile  

1. Notes  
MIUI 便籤  
項目地址:https://github.com/MiCode/Notes  
APK 地址:https://github.com/Trinea/TrineaDownload/blob/master/miui-note-demo.apk?raw=true  
其餘:項目分包比較合理,相比較 miui 的文件管理器 https://github.com/MiCode/FileExplorer 代碼規範較好得多  

1. weicuiyuan  
四次元-新浪微博客戶端  
項目地址:https://github.com/qii/weiciyuan  
APK 地址:https://play.google.com/store/apps/details?id=org.qii.weiciyuan  

1. gnucash-android  
一個記帳理財軟件  
項目地址:https://github.com/codinguser/gnucash-android  
APK 地址:http://play.google.com/store/apps/details?id=org.gnucash.android  

1. AntennaPod  
支持 rss 訂閱、音樂訂閱  
項目地址:https://github.com/danieloeh/AntennaPod  
APK 地址:https://play.google.com/store/apps/details?id=de.danoeh.antennapod  

1. ChaseWhisplyProject  
打鬼遊戲  
項目地址:https://github.com/tvbarthel/ChaseWhisplyProject  
APK 地址:https://play.google.com/store/apps/details?id=fr.tvbarthel.games.chasewhisply  

1. Tweet Lanes  
功能完整的 Twitter 客戶端  
項目地址:https://github.com/chrislacy/TweetLanes  
APK 地址:https://play.google.com/store/apps/details?id=com.tweetlanes.android  

1. Financius  
簡單易用的記帳程序  
項目地址:https://github.com/mvarnagiris/Financius  
APK 地址:https://play.google.com/store/apps/details?id=com.code44.finance  

1. todo.txt-android  
todo.txt 的官方 Android 應用  
項目地址:https://github.com/ginatrapani/todo.txt-android  
APK 地址:https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch  

1. simpletask  
基於 todo.txt 官方應用的另外一個客戶端  
項目地址:https://github.com/mpcjanssen/simpletask-android  
APK 地址:https://play.google.com/store/apps/details?id=nl.mpcjanssen.todotxtholo  

1. Muzei Live Wallpaper  
定時更換桌面精美壁紙  
項目地址:https://github.com/romannurik/muzei  
APK 地址:https://play.google.com/store/apps/details?id=net.nurik.roman.muzei  

1. Scanbook  
掃描搜索查詢圖書信息  
項目地址:https://github.com/JayFang1993/ScanBook  
APK 地址:http://www.wandoujia.com/apps/com.scanbook  

1. iosched  
The Google I/O 2014 Android App  
項目地址:https://github.com/google/iosched  
APK 地址:https://play.google.com/store/apps/details?id=com.google.samples.apps.iosched  

## 第四部分 開發工具及測試工具
主要介紹和 Android 開發工具和測試工具相關的開源項目。  

#### 1、開發效率工具
1. Parceler  
經過註解及工具類自動完成實體類 Parcelable 及值傳遞  
項目地址:https://github.com/johncarl81/parceler  

1. Json2Java  
根據 JSon 數據自動生成對應的 Java 實體類,還支持 Parcel、Gson Annotations 對應代碼自動生成。期待後續的提取父類以及多 url 構建整個工程的功能  
項目地址:https://github.com/jonfhancock/JsonToJava  
在線演示:http://jsontojava.appspot.com/  

1. IntelliJ Plugin for Android Parcelable boilerplate code generation  
Android studio 插件,生成 Parcelable 代碼  
項目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin  
效果圖:![Renderings](https://github.com/mcharmas/android-parcelable-intellij-plugin/raw/master/screenshot.png)  

1. Android Holo Colors IntelliJ Plugin  
Android studio 插件,生成 holo 樣式 9 patch 圖片  
項目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin  
效果圖:![Renderings](https://raw.github.com/jeromevdl/android-holo-colors-idea-plugin/master/other/holocolorsidea.png)  

1. Android Drawable Factory  
用於生成各個分辨率的圖片  
項目地址:https://github.com/tizionario/AndroidDrawableFactory  
效果圖:![Renderings](https://github-camo.global.ssl.fastly.net/5c3844b345a9779296f996490070dab0bfc9dbf5/68747470733a2f2f646c2e64726f70626f7875736572636f6e74656e742e636f6d2f752f32363636343637352f416e64726f69644472617761626c65466163746f72792f312e706e67)  

1. SelectorChapek for Android  
Android Studio 插件,可根據固定文件名格式資源自動生成 drawable selectors xml 文件。  
項目地址:https://github.com/inmite/android-selector-chapek  

1. Android Action Bar Style Generator  
Android ActionBar 樣式生成器,可在線選擇 ActionBar 樣式自動生成所須要的圖片資源及 xml 文件  
項目地址:https://github.com/jgilfelt/android-actionbarstylegenerator  
在線演示:http://jgilfelt.github.io/android-actionbarstylegenerator/  

1. ButterKnifeZelezny  
用於快速生成[ButterKnife](https://github.com/JakeWharton/butterknife)View 注入代碼的 Android Studio/IDEA 插件  
項目地址:https://github.com/inmite/android-butterknife-zelezny  

1. RoboCoP  
利用 Gradle task 根據固定格式的 json 文件生成 ContentProvider  
項目地址:https://github.com/mediarain/RoboCoP  

1. appiconsizes  
用於生成各個分辨率的圖片  
項目地址:http://www.appiconsizes.com/  

1. Gradle Retrolambda Plugin  
[Retrolambda](https://github.com/orfjackal/retrolambda)是將 Java8 的 Lambdas 應用於 Java7 的工具,本項目是 Gradle 插件,經過 Retrolambda 從而使 Java 或 Android 項目用 Java8 的 Lambdas 編寫,將編譯後的字節碼轉換爲 Java6 和 7 的字節碼從而正常運行  
項目地址:https://github.com/evant/gradle-retrolambda  

1. Dagger IntelliJ Plugin  
dagger 的 intellij 插件  
項目地址:https://github.com/square/dagger-intellij-plugin  

1. Android Gen Drawable Maven plugin  
在編譯時根據 SVG 描述文件生成不一樣分辨率的 jpg、png 或點 9 圖片  
項目地址:https://github.com/avianey/androidgendrawable-maven-plugin  

1. Android Asset Studio  
各類 Android 資源自動生成器,包括啓動圖標、ActionBar 圖標、通知欄圖標、點 9 等  
項目地址:https://github.com/romannurik/AndroidAssetStudio  
在線演示:http://romannurik.github.io/AndroidAssetStudio/  

1. jsonschema2pojo  
根據 Json 內容生成 java 對象,支持 jackjson 和 gson  
項目地址:https://github.com/joelittlejohn/jsonschema2pojo  
在線演示:http://www.jsonschema2pojo.org/  

1. GsonFormat  
根據 JSONObject 格式的字符串,自動生成實體類參數的 Android Studio/IntelliJ IDEA 插件  
項目地址:https://github.com/zzz40500/GsonFormat  
效果圖:![Renderings](https://camo.githubusercontent.com/fbf4b89e2ec64e80d351f725d11762ebd2b7a515/687474703a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f3136363836362d303766333038346262363735386566612e676966)  

1. 9-Patch-Resizer  
自動生成 png 及點 9 圖片的不一樣分辨率版本  
項目地址:https://github.com/redwarp/9-Patch-Resizer  

1. AndroidLocalizationer  
可用於將項目中的 string 資源自動翻譯爲其餘語言的 Android Studio/IntelliJ IDEA 插件  
項目地址:https://github.com/westlinkin/AndroidLocalizationer  

1. Material Palette  
一個將現有的色彩方案組合成材料設計的調色板方案,提供下載。選取兩個主要色彩後即可以提供下載,提供下載的格式能夠是 android 的資源 xml 文件,以色彩的方式提供,也能夠是 CSS、SVG、PNG 等常見格式文件。  
項目地址:http://www.materialpalette.com/  

#### 2、開發自測相關
1. Quality Tools for Android  
Android 測試及自測工具集合和示例  
項目地址:https://github.com/stephanenicolas/Quality-Tools-for-Android  

1. android-test-kit  
Google 的 Android 測試工具  
包括 GoogleInstrumentationTestRunner(加強版的 InstrumentationTestRunner)和 Espresso(用於快速寫出可靠測試用例的 API)  
項目地址:https://code.google.com/p/android-test-kit/  
文檔介紹:https://code.google.com/p/android-test-kit/w/list  

1. robolectric  
測試用例編寫框架  
項目地址:https://github.com/robolectric/robolectric  
Demo 地址:https://github.com/robolectric/robolectricsample  
文檔介紹:http://robolectric.org/  
特色:(1). 不須要模擬器在通常 JVM 就能夠運行測試用例  
(2). 能完成在真機上的大部分測試包括感應器  
其餘的測試用例及相關模塊 Mock 可見:[android-mock](https://code.google.com/p/android-mock/), [mockito](https://code.google.com/p/mockito/), [easy-mock](https://github.com/easymock/easymock)  

1. Android FEST  
提供一些列方便的斷言,可用於提升編寫 Android 自測代碼效率  
項目地址:https://github.com/square/fest-android  

1. BoundBox  
可用於測試類各類訪問權限的屬性、方法。實際是經過 BoundBox 這個 annotation 生成一個屬性和方法都是 public 權限的中間類並對此類進行測試完成的  
項目地址:https://github.com/stephanenicolas/boundbox  

1. Hugo  
用於打印函數信息及執行時間的工具,僅在 debug 模式生效  
項目地址:https://github.com/JakeWharton/hugo  

1. scalpel  
在應用下面添加一層用於界面調試  
項目地址:https://github.com/JakeWharton/scalpel  

1. Android Screenshot library  
Android 截圖工具類,用於在持續集成時截圖  
項目地址:https://github.com/rtyley/android-screenshot-lib  

1. sonar-android-lint-plugin  
將 android lint 的錯誤在 sonar 中展示  
項目地址:https://github.com/SonarCommunity/sonar-android  

#### 3、測試工具
1. Spoon  
可用於 android 不一樣機型設備自動化測試,能將應用 apk 和測試 apk 運行在不一樣機器上並生成相應測試報告。  
項目地址:https://github.com/square/spoon  

1. Tencent APT  
APT 是騰訊開源的一個 Android 平臺高效性能測試組件,提供豐富實用的功能,適用於開發自測、定位性能瓶頸;測試人員完成性能基準測試、競品對比測試  
項目地址:https://github.com/stormzhang/APT  

1. Emmagee  
網易開源的性能測試工具,包括 CPU、內存、網絡流量、啓動時間、電池狀態等  
項目地址:https://github.com/NetEase/Emmagee  

1. Android py-uiautomator  
py-uiautomator 是一個對 Android uiautomator 用 python 進行封裝的測試框架.  
項目地址:https://github.com/xiaocong/uiautomator  

1. Augmented Traffic Control  
模擬網絡情況,包括帶寬、時延抖動、丟包率、錯包率、包重排率  
項目地址:https://github.com/facebook/augmented-traffic-control  

1. stetho  
強大的 Android Debug 工具。支持網絡請求監控以及數據庫查看,能夠和 Chrome DevTools 結合或者命令行模式。  
項目地址:https://github.com/facebook/stetho  

#### 4、開發及編譯環境
1. Buck  
facebook 開源的 Android 編譯工具,效率是 ant 的兩倍。主要優勢在於:  
(1) 加快編譯速度,經過並行利用多核 cpu 和跟蹤不變資源減小增量編譯時間實現  
(2) 能夠在編譯系統中生成編譯規則而無須另外的系統生成編譯規則文件  
(3) 編譯同時可生成單元測試結果  
(4) 既可用於 IDE 編譯也可用於持續集成編譯  
(5) facebook 持續優化中  
項目地址:https://github.com/facebook/buck  

1. Android Maven Plugin  
Android Maven 插件,可用於對 android 三方依賴進行管理。在 J2EE 開發中,maven 是很是成熟的依賴庫管理工具,可統一管理依賴庫。  
項目地址:https://github.com/jayway/maven-android-plugin  

1. umeng-muti-channel-build-tool  
渠道打包工具  
項目地址:https://github.com/umeng/umeng-muti-channel-build-tool  
另可參見 Google 的構建系統 Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide  

1. Genymotion  
目前最好用最快的 android 模擬器  
項目地址:http://www.genymotion.com/  
Android studio 集成控件: http://plugins.jetbrains.com/plugin/7269?pr=idea  
Cyril Mottier 推薦:http://cyrilmottier.com/2013/06/27/a-productive-android-development-environment/  

1. gradle-mvn-push  
方便的將 Gradle 的 Artifacts 上傳到 Maven 倉庫  
項目地址:https://github.com/chrisbanes/gradle-mvn-push  
文檔介紹:https://github.com/chrisbanes/gradle-mvn-push#usage  

1. Android Emulator Plugin for Jenkins  
Android 模擬器 jenkins 插件,用於 Jenkins 作持續集成時跑模擬器測試  
項目地址:https://github.com/jenkinsci/android-emulator-plugin  

1. Android Maven Plugin  
管理應用所須要的依賴庫。包括的構建工具備 Maven、Gradle、ant、sbt  
項目地址:https://github.com/mosabua/maven-android-sdk-deployer  

1. SDK Manager Plugin  
下載和管理 Android SDK 的 Gradle 插件  
項目地址:https://github.com/JakeWharton/sdk-manager-plugin  

1. Gradle Protobuf Plugin  
將.proto 文件轉換成 Java 文件的 gradle 插件  
項目地址:https://github.com/andrewkroh/gradle-protobuf-plugin  

1. ChromeADB  
Chrome 的 Adb 插件,當登陸後,能看到全部鏈接的設備並操做,能夠看應用、進程、內存及磁盤使用狀況等  
項目地址:https://github.com/importre/chromeadb  

#### 5、其餘
1. ViewServer  
容許 app 運行在任何手機上均可以用 HierarchyViewer 查看  
項目地址:https://github.com/romainguy/ViewServer  

1. GridWichterle for Android  
在整個系統上顯示一個 grid,用來幫助查看應用佈局及使得佈局更美觀,可設置 grid 網格大小和顏色,android 推薦 48dp 和 8dp,可見 Android Design Guidelines – Metrics and Grids,比起 hierarchyviewer 相差甚遠,不過偶爾可用來做爲佈局查看工具。  
項目地址:https://github.com/inmite/android-grid-wichterle  
Demo 地址:https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle  

1. Catlog  
手機端 log 查看工具,支持不一樣顏色顯示、關鍵字過濾、級別過濾、進程 id 過濾、錄製功能等  
項目地址:https://github.com/nolanlawson/Catlog  
在線演示:https://play.google.com/store/apps/details?id=com.nolanlawson.logcat  

1. PID Cat  
根據 package 查看 logcat 日誌  
項目地址:https://github.com/JakeWharton/pidcat  

1. ACRA  
應用崩潰信息日誌上報到 GoogleDoc 工具,網頁版展示結果三方開源地址 https://github.com/BenoitDuffez/crashreportsviewer  
項目地址:https://github.com/ACRA/acra  
文檔介紹:https://github.com/ACRA/acra/wiki/BasicSetup  

1. Crashlytics  
提供豐富的應用崩潰信息日誌收集  
輕量級,豐富,可自定義應用崩潰信息收集器,附有郵件通知  
項目地址:http://www.crashlytics.com/  
集成插件:[Android Studio, Eclipse and IntelliJ](http://try.crashlytics.com/sdk-android/?utm_source=blog&utm_medium=blog&utm_campaign=Announcing_android_studio_wp&utm_content=CTA_button)  

1. Android Resource Navigator  
chrome 插件,能夠方便的查看 github 上 android 源碼工程的 styles.xml 和 themes.xml。主要功能:  
(1) 快速打開 android styles.xml themes.xml  
(2) 方便在資源間跳轉。styles.xml themes.xml 文件中資源連接跳轉,能夠方便跳轉到某個資源  
(3) 方便查找某個 style 和 theme。chrome 地址欄輸入 arn+tab+搜索內容回車便可  
(4) 自動下載不一樣分辨率下的 drawable  
(5) 經過映射查找那些不是按照固定命名規則命名的 style 和 theme  
項目地址:https://github.com/jgilfelt/android-resource-navigator  
在線演示:https://chrome.google.com/webstore/detail/android-resource-navigato/agoomkionjjbejegcejiefodgbckeebo?hl=en&gl=GB  

1. android-resource-remover  
根據 lint 的提示刪除項目中無用的資源,減小包的大小  
項目地址:https://github.com/KeepSafe/android-resource-remover  

1. Telescope  
經過手勢截圖以特定主題發送到特定郵箱地址報告 Bug  
項目地址:https://github.com/mattprecious/telescope  

1. Complete Android Fragment & Activity Lifecycle  
完整的 Android Fragment/Activity 生命週期圖  
項目地址:https://github.com/xxv/android-lifecycle  

1. Bugsnag Notifier for Android  
經過`Thread.UncaughtExceptionHandler`捕獲應用未處理的異常崩潰 Bug 並用 Notification 展現同時上傳到後臺服務器  
項目地址:https://github.com/bugsnag/bugsnag-android  
文檔介紹:https://github.com/bugsnag/bugsnag-android#installation--setup  

1. Material Design Icons  
Google Material Design 規範中的 Icon  
項目地址:https://github.com/google/material-design-icons  

1. scrollscreenshot  
Android 滾動屏幕自動截圖 jar 包,支持縱向、橫向滾動截屏拼接  
項目地址:https://github.com/PGSSoft/scrollscreenshot  
效果圖:![Renderings](https://github.com/PGSSoft/scrollscreenshot/raw/master/samplehorizontal.png)  

1. droidicon  
1600+的海量 Icon,包括 750+的 Material Design icons  
項目地址:https://github.com/theDazzler/droidicon  

1. leakcanary  
Android 內存泄露檢測工具,集成方便,出現泄露後報告直觀  
項目地址:https://github.com/square/leakcanary  
效果圖:![Renderings](https://github.com/square/leakcanary/blob/master/assets/screenshot.png)  

1. CacheUtilsLibrary  
將任何Java Object類型的數據序列化後寫入緩存文件,未來使用時讀取緩存文件並反序列化成對應Java Object的庫  
項目地址:https://github.com/westlinkin/CacheUtilsLibrary  


## 第五部分  
主要介紹那些樂於分享而且有一些很不錯的開源項目的我的和組織。Follow 大神,深挖大神的項目和 following,你會發現不少。  

#### 1、我的  
1. JakeWharton  
就任於 Square,絕對牛逼的大神,項目主要集中在 Android 版本兼容,ViewPager 及開發工具上  
Github 地址:https://github.com/JakeWharton  
表明做:ActionBarSherlock,Android-ViewPagerIndicator,Nine Old Androids,SwipeToDismissNOA,hugo,butterknife,Android-DirectionalViewPager, scalpel    
pidcat 另外對 square 及其餘開源項目有不少貢獻  
主頁:http://jakewharton.com/  

1. Chris Banes  
Github 地址:https://github.com/chrisbanes  
表明做:ActionBar-PullToRefresh,PhotoView,Android-BitmapCache,Android-PullToRefresh  
主頁:http://chris.banes.me/  

1. Koushik Dutta  
就任於 ClockworkMod  
Github 地址:https://github.com/koush  
表明做:Superuser,AndroidAsync,UrlImageViewHelper,ion, 另外對 https://github.com/CyanogenMod 的開源項目有不少貢獻  
主頁:http://koush.com/  

1. Simon Vig  
Github 地址:https://github.com/SimonVT  
表明做:android-menudrawer,MessageBar  
主頁:http://simonvt.net/  

1. Manuel Peinado  
Github 地址:https://github.com/ManuelPeinado  
表明做:FadingActionBar,GlassActionBar,RefreshActionItem,QuickReturnHeader  

1. Emil Sj?lander  
Github 地址:https://github.com/emilsjolander  
表明做:StickyListHeaders,sprinkles,android-FlipView  
主頁:http://emilsjolander.se/  

1. greenrobot  
Github 地址:https://github.com/greenrobot  
表明做:greenDAO,EventBus  
主頁:http://greenrobot.de/  

1. Jeff Gilfelt  
Github 地址:https://github.com/jgilfelt  
表明做:android-mapviewballoons,android-viewbadger,android-actionbarstylegenerator,android-sqlite-asset-helper  
主頁:http://jeffgilfelt.com  

1. Romain Guy  
Android team 成員(2013.10 已離開 Android team,仍在 Google)  
Github 地址:https://github.com/romainguy  
表明做:ViewServer  
主頁:http://www.curious-creature.org/category/android/  
個人攝影做品:http://www.flickr.com/photos/romainguy  

1. sephiroth74  
就任於 Aviary.com  
Github 地址:https://github.com/sephiroth74  
表明做:ImageViewZoom,HorizontalVariableListView,AndroidWheel,purePDF  
主頁:http://www.sephiroth.it/  

1. Cyril Mottier  
Google 開發者專家認證,發佈一些 Android 技巧及文章  
Github 地址:https://github.com/cyrilmottier  
表明做:GreenDroid,Polaris  
主頁:http://cyrilmottier.com/  

#### 2、組織  
1. Square  
有態度有良心的企業,不少不錯的分享  
Github 地址:https://github.com/square  
表明做:okhttp、fest-android,android-times-square、picasso、dagger、spoon 等等  
主頁:http://square.github.io/  

1. Inmite s.r.o.  
Github 地址:https://github.com/inmite  
表明做:android-styled-dialogs,android-grid-wichterle,android-selector-chapek  
主頁:http://www.inmite.eu/  

#### 3、博客  
[部分國外著名 Android 開發者信息](https://github.com/android-cn/android-dev-com)  

css

相關文章
相關標籤/搜索