android開源代碼

Android開源項目--分類彙總

轉自:https://github.com/Trinea/android-open-projectcss

Android開源項目第一篇——個性化控件(View)篇

  包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、其餘html

Android開源項目第二篇——工具庫篇

   包括依賴注入圖片緩存網絡相關數據庫ORM工具包Android公共庫高版本向低版本兼容庫多媒體事件總線傳感器安全其餘

Android開源項目第三篇——優秀項目篇

   比較有意思的完整的Android項目

Android開源項目第四篇——開發及測試工具篇

  包括開發效率工具開發自測相關測試工具開發及編譯環境其餘

Android開源項目第五篇——優秀我的和團體篇

  樂於分享而且有一些很不錯的開源項目的我的組織,包括JakeWharton、Chris Banes、Koushik Dutta等大牛java

 

第一部分 個性化控件(View)

 

主要介紹那些不錯個性化的View,包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar及其餘如Dialog、Toast、EditText、TableView、Activity Animation等等。linux

1、ListView

  1. android-pulltorefresh 一個強大的拉動刷新開源項目,支持各類控件下拉刷新
    ListView、ViewPager、WevView、ExpandableListView、GridView、(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示例:新浪微博各個頁面android

  2. android-pulltorefresh-listview 下拉刷新ListView
    項目地址:https://github.com/johannilsson/android-pulltorefresh
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true
    PS:這個被不少人使用的項目實際有很多bug,推薦使用上面的android-pulltorefreshios

  3. DropDownListView 下拉刷新及滑動到底部加載更多ListView
    項目地址:https://github.com/Trinea/AndroidCommon
    Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
    文檔介紹:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/git

  4. 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 Androidgithub

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

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

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

  8. pinned-section-listview GroupName滑動到頂端時會固定不動直到另一個GroupName到達頂端的ExpandListView
    項目地址:https://github.com/beworker/pinned-section-listview
    效果圖:Renderings

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

  10. 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

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

  12. CustomFastScrollView ListView快速滑動,同時屏幕中間PopupWindows顯示滑動到的item內容或首字母
    項目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo
    效果圖:Renderings

  13. Android-ScrollBarPanel ListView滑動時固定的Panel指示顯示在scrollbar旁邊
    項目地址:https://github.com/rno/Android-ScrollBarPanel
    效果展現:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png

  14. 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

  15. 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/

  16. 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

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

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

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

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

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
    APP示例:太多了。。如今連google都在用

  2. 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,知乎等

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

  4. 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音樂

  5. 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.

  6. 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

  2. SlidingMenu 滑出式菜單,經過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單zoom、scale、slide up三種動畫樣式出現。
    項目地址:https://github.com/jfeinstein10/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
    MenuDrawer和SlidingMenu比較:SlidingMenu支持菜單動畫樣式出現,MenuDrawer支持菜單view處於內容的上下層

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

  4. 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

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

  6. Android Wheel Menu 圓形旋轉選取菜單
    項目地址:https://github.com/anupcowkur/Android-Wheel-Menu
    效果圖:Renderings

  7. FoldingNavigationDrawer滑動並以摺疊方式打開菜單
    項目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android
    使用介紹:https://play.google.com/store/apps/details?id=com.ptr.folding.sample
    效果圖:Renderings

4、ViewPager 、Gallery

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

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

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

  4. android-pulltorefresh 支持下拉刷新的ViewPager
    項目地址:https://github.com/chrisbanes/Android-PullToRefresh
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
    APP示例:新浪微博各個頁面

  5. FancyCoverFlow支持Item切換動畫效果的相似Gallery View
    項目地址:https://github.com/davidschreiber/FancyCoverFlow
    Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples
    效果圖:Renderings

  6. 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示例:相似微信中查看聊天記錄圖片時可雙擊放大,而且放大狀況下能正常左右滑動到先後圖片

  7. 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/

  8. Salvage view 帶View緩存的Viewpager PagerAdapter,很方便使用
    項目地址:https://github.com/JakeWharton/salvage

  9. Android PagerSlidingTabStrip 配合ViewPager使用的Indicator,支持ViewPager Scroll時Indicator聯動
    項目地址:https://github.com/astuetz/PagerSlidingTabStrip
    Demo地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample

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等

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

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

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

  5. StickyGridHeaders
    GroupName滑動到頂端時會固定不動直到另一個GroupName到達頂端的GridView
    項目地址:https://github.com/TonicArtos/StickyGridHeaders
    效果圖:Renderings

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

  7. 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

6、ImageView

  1. PhotoView
    支持雙擊或雙指縮放的ImageView
    在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不只支持ViewPager,同時支持單個ImageView
    項目地址:https://github.com/chrisbanes/PhotoView
    Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample
    APP示例:photup

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

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

  4. RoundedImageView
    帶圓角的ImageView
    項目地址:https://github.com/vinc3m1/RoundedImageView
    效果圖:Renderings

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

  6. CircleImageView
    圓形的ImageView
    項目地址:https://github.com/hdodenhof/CircleImageView
    效果圖:Renderings

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

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

7、ProgressBar

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

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

  3. 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
    APP示例:square
    效果圖:Renderings

  4. HoloCircularProgressBar Android4.1 時鐘App樣式
    項目地址:https://github.com/passsy/android-HoloCircularProgressBar
    APP示例:Android4.1時鐘App
    效果圖:Renderings

  5. ProgressButton 經過圖釘的不一樣狀態顯示進度
    項目地址:https://github.com/f2prateek/progressbutton
    文檔介紹:http://f2prateek.com/progressbutton/
    效果圖:Renderings

8、TextView

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

  1. android-flowtextview
    文字自動環繞其餘View的Layout
    項目地址:https://code.google.com/p/android-flowtextview/
    效果圖:http://i949.photobucket.com/albums/ad332/vostroman1500/1.png

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

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

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

  5. 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

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

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

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

9、其餘

  1. achartengine 強大的圖表繪製工具
    支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、撥號圖/表、立方線圖及各類圖的結合
    項目地址:https://code.google.com/p/achartengine/
    官方網站:http://www.achartengine.org/
    效果圖:Renderings
    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
    APP示例:Wordpress Android,Google Analytics

  2. GraphView 繪製圖表和曲線圖的View
    可用於Android上的曲形圖、柱狀圖、波浪圖展現
    項目地址:https://github.com/jjoe64/GraphView
    Demo工程:https://github.com/jjoe64/GraphView-Demos
    Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
    APP示例:Wordpress Android,Google Analytics

  3. 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

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

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

  6. 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

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

  8. 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

  9. 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

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

  11. Android ViewBadger爲其餘View添加角標等
    項目地址:https://github.com/jgilfelt/android-viewbadger
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true
    效果圖:https://github-camo.global.ssl.fastly.net/a705a3e88c75ae2394943bd7c56f725697616ea8/687474703a2f2f7777772e6a65666667696c66656c742e636f6d2f766965776261646765722f76622d31612e706e67

  12. 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精簡播放欄

  13. 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

  14. android-calendar-card 日曆
    項目地址:https://github.com/kenumir/android-calendar-card
    Demo地址:https://play.google.com/store/apps/details?id=com.wt.calendarcardsample
    效果圖:Renderings

  15. ColorPickerView 顏色選擇器,支持PopupWindows或新的Activity中打開
    項目地址:https://code.google.com/p/color-picker-view/
    效果圖:Renderings

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

  17. AndroidWheel Android Wheel支持城市、多種日期時間、密碼、圖片
    項目地址:https://github.com/sephiroth74/AndroidWheel
    效果圖:Renderings

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

  19. 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

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

  21. UndoBar屏幕底部顯示取消或是確認的PopupWindows
    項目地址:https://github.com/soarcn/UndoBar
    效果圖:Renderings

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

  23. ActivityTransition Activity切換動畫,包括漸變、flip、某個位置進入等等
    項目地址:https://github.com/ophilbert/ActivityTransition
    使用介紹:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
    效果圖:相似桌面左右切換的各類效果,不過桌面並不是用ViewPager實現而已

  24. 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

  25. GlowPadView Android4鎖屏界面解鎖
    項目地址:https://github.com/nadavfima/GlowPadView
    效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png

  26. android-lockpattern Android的圖案密碼解鎖
    項目地址:https://code.google.com/p/android-lockpattern/
    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開機的圖案密碼解鎖,支付寶的密碼解鎖

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

  28. SuperToasts 更豐富樣式的toast,支持Button、Progress、Horizontal Progress樣式、支持進入動畫、支持撤銷及其動畫設置
    項目地址:https://github.com/JohnPersano/SuperToasts
    Demo地址:https://play.google.com/store/apps/details?id=com.supertoastsdemo
    效果圖:SuperButtonToast

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

  30. UndoBar 屏幕底部顯示取消或是確認某操做
    項目地址:https://github.com/jenzz/Android-UndoBar
    效果圖:Renderings

  31. ColorPickerPreference 顏色選擇器
    項目地址:https://github.com/attenzione/android-ColorPickerPreference
    效果圖:Renderings

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

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

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

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

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

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

第二部分 工具庫

主要包括那些不錯的開發庫,包括依賴注入框架、圖片緩存、網絡相關、數據庫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,在編譯時完成,不會對運行時有性能影響。
    PS:與roboguice的比較:roboguice經過運行時讀取annotations進行反射,因此可能影響應用性能,而AndroidAnnotations在編譯時生成子類,因此對性能沒有影響

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

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

  4. Dagger 依賴注入,適用於Android和Java
    項目地址:https://github.com/square/dagger
    文檔介紹:http://square.github.io/dagger/

2、圖片緩存

  1. Android-Universal-Image-Loader 圖片緩存
    目前使用最普遍的圖片緩存,支持主流圖片緩存的絕大多數特性。
    項目地址:https://github.com/nostra13/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

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

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

3、網絡相關

  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

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

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

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

  5. HttpCache
    Http緩存
    項目地址:https://github.com/Trinea/AndroidCommon
    Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
    文檔介紹:http://www.trinea.cn/android/android-http-cache
    特色是:(1) 根據cache-control、expires緩存http請求
    (2) 支持同步、異步Http請求
    (3) 在匿名回調中處理請求結果
    (4) 在UI線程外進行http請求
    (5) 默認gzip壓縮

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

  7. 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緩存減小沒必要要的請求

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

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

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) 庫大小小

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

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

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

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

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

  3. 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/
    包括:(1)緩存(圖片緩存、預取緩存、網絡緩存)
    (2) 公共View(下拉及底部加載更多ListView、底部加載更多ScrollView、滑動一頁Gallery)
    (3) Android經常使用工具類(網絡、下載、Android資源操做、shell、文件、Json、隨機數、Collection等等)

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

  5. CleanAndroidCode
    整合了Dagger Otto AndroidAnnotations,方便快速開發
    項目地址:https://github.com/pyricau/CleanAndroidCode
    我目前也在作框架選型方面的工做,不出意外後面也會出個跟四、5相似的項目

6、Android 高版本向低版本兼容

  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
    APP示例:太多了。。如今連google都在用

  2. Nine Old Androids 將Android 3.0(Honeycomb)全部動畫API(ObjectAnimator ValueAnimator等)兼容到Android1.0
    項目地址:https://github.com/JakeWharton/NineOldAndroids
    Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample
    文檔介紹:http://nineoldandroids.com/

  3. 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

  4. SherlockNavigationDrawer 將Android NavigationDrawer和ActionbarSherlock結合,解決4.0如下NavigationDrawer的適配問題
    項目地址:https://github.com/tobykurien/SherlockNavigationDrawer

  5. Notifications4EveryWhere 將Android 4.1的兼容到Android2.2++
    項目地址:https://github.com/youxiachai/Notifications4EveryWhere
    NavigationDrawer文檔地址:http://developer.android.com/training/implementing-navigation/nav-drawer.html

  6. 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

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

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/

  2. 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)等常見的多種視頻流媒體協議,包括點播與直播。

  3. 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

  4. 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

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

  6. Cropper
    圖片局部剪切工具,可觸摸控制選擇區域或旋轉
    項目地址:https://github.com/edmodo/cropper
    使用介紹:https://github.com/edmodo/cropper/wiki
    效果圖:Renderings

  7. android-crop
    圖片裁剪Activity
    項目地址:https://github.com/jdamcd/android-crop
    效果圖:Renderings

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

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

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

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

8、事件總線(訂閱者模式)

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

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

  2. Otto Square的開源項目,基於Guava的Android優化
    項目地址:https://github.com/square/otto
    文檔介紹:http://square.github.io/otto/
    EventBus與Otto的功能及性能對比文檔
    EventBus與Otto性能對比Demo Apk

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

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

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

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

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

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

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

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

  9. 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

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

  11. 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

10、安全

  1. SQLCipher Sqlite加密工具
    項目地址:https://github.com/sqlcipher/sqlcipher
    幫助文檔:http://sqlcipher.net/sqlcipher-for-android/

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

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

  4. 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

  5. GlowPadView Android 4鎖屏界面解鎖
    項目地址:https://github.com/nadavfima/GlowPadView
    效果圖:https://raw.github.com/nadavfima/GlowPadView/master/example.png

  6. android-lockpattern Android的圖案密碼解鎖
    項目地址:https://code.google.com/p/android-lockpattern/
    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開機的圖案密碼解鎖,支付寶的密碼解鎖

11、其餘

  1. Salvage view
    帶View緩存的Viewpager PagerAdapter,很方便使用
    項目地址:https://github.com/JakeWharton/salvage

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

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

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

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

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

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

  8. Android Plugin Framework
    Android插件式開發
    項目地址:https://github.com/umeng/apf

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

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

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

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

  13. 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

  14. xCombine
    Android App插件式插件開發
    項目地址:https://github.com/wyouflf/xCombine
    文檔介紹:http://my.oschina.net/u/1171837/blog/155377

  15. Memento
    保證在系統配置改變時,Activity中的某些數據能夠簡單安全的保持不變
    項目地址:https://github.com/mttkay/memento
    文檔介紹:https://github.com/mttkay/memento#usage

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

  17. 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

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

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

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

第三部分 優秀項目

主要介紹那些Android還不錯的完整項目,目前包含的項目主要依據是項目有意思或項目分層規範比較好。
Linux
項目地址:https://github.com/torvalds/linux
Android
項目地址:https://android.googlesource.com/ 或 https://github.com/android
以上兩個項目,不解釋

(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
PS:如今市面上不少應用的二維碼掃描功能都是從這個修改而來

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

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

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

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

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

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

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

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

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

(11) 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

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

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

第四部分 開發工具及測試工具

主要介紹和Android開發工具和測試工具相關的開源項目。

1、開發效率工具

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

  2. IntelliJ Plugin for Android Parcelable boilerplate code generation Android studio插件,生成Parcelable代碼
    項目地址:https://github.com/mcharmas/android-parcelable-intellij-plugin
    效果圖:Holo Colors Idea

  3. Android Holo Colors IntelliJ Plugin Android studio插件,生成holo樣式9 patch圖片
    項目地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin
    效果圖:Holo Colors Idea

  4. Android Drawable Factory 用於生成各個分辨率的圖片
    項目地址:https://github.com/tizionario/AndroidDrawableFactory
    效果圖:Android Drawable Factory

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

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

  7. ButterKnifeZelezny
    用於快速生成ButterKnifeView注入代碼的Android Studio/IDEA插件
    項目地址:https://github.com/inmite/android-butterknife-zelezny

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

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

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

2、開發自測相關

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

  2. 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

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

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

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

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

  7. scalpel
    在應用下面添加一層用於界面調試,待詳細補充 // TODO
    項目地址:https://github.com/JakeWharton/scalpel

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

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

3、測試工具

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

4、開發及編譯環境

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

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

  3. 渠道打包工具
    容許app運行在任何手機上均可以用HierarchyViewer查看
    項目地址:https://github.com/umeng/umeng-muti-channel-build-tool
    另可參見Google的構建系統Gradle:http://tools.android.com/tech-docs/new-build-system/user-guide

  4. 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/

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

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

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

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

5、其餘

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

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

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

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

  5. ACRA 應用崩潰信息上報到GoogleDoc工具
    項目地址:https://github.com/ACRA/acra
    文檔地址:https://github.com/ACRA/acra/wiki/BasicSetup

  6. Crashlytics 提供豐富的應用崩潰信息收集
    輕量級,豐富,可自定義應用崩潰信息收集器,附有郵件通知
    項目地址:http://www.crashlytics.com/
    集成插件:Android Studio, Eclipse and IntelliJ

  7. 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

第五部分

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

1、我的

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

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

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

  4. Simon Vig
    Github地址:https://github.com/SimonVT
    表明做:android-menudrawer,MessageBar
    博客:http://simonvt.net/

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

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

  7. greenrobot
    Github地址:https://github.com/greenrobot
    表明做:greenDAO,EventBus
    網址:http://greenrobot.de/

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

  9. 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

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

  11. 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/
    有態度有良心的企業,不少不錯的分享

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

3、博客

  1. Chet Haase
    博客:http://graphics-geek.blogspot.com/
    Android framework UI team 成員

License

Copyright 2014 trinea.cn

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.


 
相關文章
相關標籤/搜索