Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android之史上最全最簡單最有用的第三方開源庫收集整理

Android之史上最全最簡單最有用的第三方開源庫收集整理

編輯:關於Android編程


Android開源庫

自己一直很喜歡Android開發,就如博客簽名一樣, 我是程序猿,我為自己代言 。

在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫,推薦給在苦苦尋找的開發者,而且我會 不定期的更新 這篇文章。

Android下的優秀開發庫數不勝數,在本文中,我列舉的多是開發流程中最常用的一些。如果你還想了解更多的Android開源庫,可以關注我的博客,每一個庫都是我認真查看或者編譯運行的,希望對你產生幫助。

一、兼容類庫

  1. ActionBarSherlock  : Action Bar是Android 3.0後才開始支持的,ActionBarSherlock是讓Action Bar功能支持2.X後的所有平台,而且他會自動的判斷是調用原生Action Bar還是使用擴展ActionBar。在我的小熊詞典裡有用到這個庫,而且很多非常知名的App也在使用這個庫。 GitHub   Official   ActionBar科普  最新消息(2013年7月):Android官方發布的的Support  Library Revision 18  開始支持 ActionBar 的兼容。所以可以不用再使用ActionBarSherlock了。
  2. Android-ViewPagerIndicator  : 這是與ViewPager兼容的一個分頁指示器庫。分頁指示器(Friends 和 Suggested就是分頁,而下面藍色的小條就是指示器,ViewPagerIndicator支持多種樣式的指示器。): GitHub 
     
  3. NineOldAndroids   : NineOldAndroids 將  Honeycomb (Android 3.0) 的動畫 API 擴展到了Android 1.0以上。這個庫的作者即是 ActionBarSherlock 的作者,也是Android-ViewPagerIndicator 的作者,

    Jake Wharton ,  非常厲害的一個人,Github關注量超過 1.6K ,如果你也做Android開發或者即將開始學習Android開發,一定要去Follow他,而且留意一下他每次的star和follow信息,經常會有很驚奇的發現。

  4. HoloEverywhere :在Android 4.0時,Google引入了新的主題風格— Holo ,多數廠商都想統一界面設計UI,因此更加具有兼容性的Holo主題庫 HoloEveryWhere 便成為很多開發者的選擇。在Android的官方Blog中也對 HoloEveryWhere 這個庫有所推薦, 點此查看 官方博客對 HoloEveryWhere 的介紹。 HoloEveryWhere 的Github 。
  5. Android-Datepicker : 兼容Android 4.0的 datepicker 至Android 2.2。  GitHub 
     

二、擴展功能庫

  1. SlidingMenu  : SlidingMenu 能非常容易的讓開發者實現程序的抽屜效果,所謂的抽屜效果如下圖所示,通常被用作呼出菜單。而且SlidingMenu能很方便的與ActionBarSherlock融合,在官方GitHub上有關於如何融合的說明。  GitHub   同時,想要達到相同功能也可以看另一個Drawer設計: Android-Undergarment 
     
  2. AppMsg  : 優雅的彈出類似Toast的消息提示,支持3種狀態Alert,Confirm以及Info。GitHub 
     
  3. Drag-Sort-ListView  : 很多人都用過在一個ListView中通過拖拽對已有的數據進行排序操作。Drag-Sort-Listview就是實現這一功能的開源庫。 GitHub
  4. Android-Flip  : 輕松實現類似FlipBoard的翻頁功能。  GitHub 
     
  5. Android-PullToRefresh  : Android下拉刷新組件。  GitHub     此外,該作者還有另外一個實用度和關注量極高的項目–另一種 Android ActionBar 的實現: GitHub   另:GitHub上另一個Android-PullToRefresh的實現。 GitHub 
     
  6. ActionBar-PullToRefresh:  基於ActionBar的下拉刷新組件,在下拉的時候會替換掉ActionBar,顯示更新中…  GitHub   Demo下載
  7. picasso:   程序中經常面臨加載網絡圖片的情況,成熟做法:異步下載->緩存->顯示,Picasso一行代碼就可這三步輕松完成。 GitHub   GitHubPage  ,GitHub上圖片異步加載緩存類庫很多,你也可嘗試使用 Android-Universal-Image-Loader  或者  LazyList  後面將介紹到的afinal(國人項目)也具有此功能。
  8. Card-UI: Google很早之前開始在自家的App內使用卡片式布局,CardUI極其美觀大方,想要在自己的App中集成卡片UI布局,那麼就輕松地用這個項目吧。 GitHub  或者你也可以使用這個庫來完成卡片布局。 CardLib 
     
  9. Android-DragArea:Android拖拽排序,拖拽移動 庫。 GitHub  (Opera Android浏覽器的拖拽排序就是用的這個庫)
  10. Android-StaggeredGrid: Android 下類pinterest布局。 GitHub

    Android 類 Pinterest 布局

  11. FlipImageView: 通過擴展ImageView,實現了ImageView的各種翻轉效果。GitHub   體驗地址
  12. SmoothProgressBar:平滑的ProgressBar,各種效果。 GitHub   體驗地址

    各式各樣的ProgressBar

  13. SuperToasts: 一個憤青對Toast的超強擴展,支持Toast中顯示Progressbar,顯示圖片,顯示文等等效果,快去感受下吧! Play GitHub

  14. AndroidFloatLabel:Android Textview 浮動提示,效果是類似下圖的。 GitHub

    浮動提示

  15. cropper:Android截圖和旋轉庫,輕松實現頭像和一些場景下的圖片操作。 GitHub

    Android Cropper

  16. StickyGridHeaders:給GridView加上Header。 GitHub

    GridHeader

  17. Background-ViewPage:支持背景圖同時滑動的ViewPager。 感受地址   GitHub
  18. GoogleStyle-Datatime-Picker:做的很精致的Google風格的時間選擇器。  Play  GitHub 

三、工具類庫:

首先,就我個人開發經驗,總結一下平常用到的一些最常用的功能:

  1. 下載,比如圖片,文件。
  2. 將下載的文件進行解壓。
  3. 請求服務器,比如說上傳登陸信息,更新某些數據,又或者上傳頭像文件。
  4. 從文件系統中選擇要操作的文件(圖片,拍照,視頻,拍攝視頻)。
  5. 有時候也需要爬取某些網頁數據。
  6. 存儲一些配置信息
  7. 播放視頻
  8. 再有一個特殊需求就是關乎Android程序UI設計,圖標是個很麻煩的問題。每次都難以找到合適的Android 設計UI。

隨後,我將很有針對性的推薦一些功能庫,來簡化上面的問題。

  1. afinal :  afinal 是一個很方便的工具庫。 GitHub    作者博客 (注:國人項目喲)
    • 一行代碼就可以對數據庫進行增刪改查。 
    • 完全注解方式就可以進行UI綁定和事件綁定。無需findViewById和setClickListener等。
    • 輕松實現Android上傳文件,POST數據,下載文件(支持斷點續傳,隨時停止下載任務 或者 開始任務)。
    • 一行代碼 加載網絡圖片。
  2. android-async-http : Android下的異步HTTP庫。 GitHub     文檔   PS:作者的GitHub值得關注。
    • 發送異步http請求,並且可在回調函數中處理返回響應Response。
    • http請求在thread線程,不會阻塞UI線程。
    • 請求使用線程池(ThreadPool)實現,優化了並發的資源使用。
    • 支持Multipart 文件上傳。
    • 如果Request請求失敗,會自動請求。
    • 支持Json解碼。
    • 支持存儲Cookies到Preference中。
    • 支持gzip處理Request以及Response。
    • 整個庫只有19KB。
  3. http-requests : Java http請求庫,設計的很優雅的一個庫,推薦。  GitHub
  4. async-http-client : Android下的異步 Http 和 WebSocket 庫。   GitHub
    • 支持代理設置
    • 支持分片兒處理請求返回內容
    • 支持WebSocket
  5. zt-zip:  壓縮和解壓庫。  GitHub
    • 壓縮和解壓
    • 單獨操作文件壓縮和解壓。
    • 替換zip文件中的某個文件
  6. aFileChooser :文件選擇器,用於選擇需要操作的文件  GitHub
  7. image-chooser-library : 圖片和視頻的選擇庫。  GitHub   Demo
  8. jsoup:  HTML解析,並且能很好理解DOM,CSS,以及JQuery。 GitHub   官方   PS:這是java庫。做網頁爬蟲(Crawler,Robot)必備。
  9. toml: 這是個跨語言的配置信息存取方案。 GitHub
  10. Androiton-Action-Bar-Icons: 一個針對Android 優化過的ICON圖標集。  GitHub  Demo
  11. 推薦一個Android整體框架:ThinkAndroid 集成了ioc,orm,下載,緩存等模塊,能讓開發更加快速和高效,同時還是國人項目。 GitHub
  12. 如果你想要更快的網絡傳輸和加載速度可以試試OKHTTP,他實現了Google開發的SPDY協議,通過復用一個Socket,縮短網絡加載時間。 關於SPDY看這裡   OKHTTP
  13. Android-ProgressFragment :等待數據的時候,支持顯示等待符號的Fragment控件。 GitHub
  14. 關於播放視頻,不要再去研究什麼FFMPEG了,too slow,國人有個非常非常出色的開源項目叫Vitamio,讓你播放視頻簡單如abc。 GitHub   官方網站
  15. AndroidCommon :Android常用的一些庫和功能,如緩存,下拉列表,下載管理,靜默安裝等。感謝 Trinea  GitHub
  16. ion: 讓Android的網絡操作變得極其簡單,支持異步獲取和處理JSON,支持Android文件下載(同時支持下載進度條綁定),支持安全鏈接和代理。超級推薦!  GitHub

四、圖標資源:

  • http://iconsparadise.com/  質量一般,但也是一種選擇
  • http://iconbench.com/  在線產生一些小圖標
  • http://www.androidicons.com/  圖標質量很不錯,但是要付費($25刀),如果有想合買的可以聯系我~
  • https://code.google.com/p/android-ui-utils/   用來在線生成符合Android Design風格的設計圖標。  項目地址
  • http://www.flaticon.com/  高質量矢量圖,推薦之~
  • Android-Iconify :一個將AweomeICON和Android結合起來的項目,推薦。
  • IonIconView :Android下的一個基於AwesomeICON的圖標組件,力薦~  
    \

五、一些手冊

  • Android圖形界面設計手冊 ,可以用來快速查看圖標的大小、ActionBar的Height等瑣碎的 Android Design 要求。 GitHub
  • Android 官方UI設計手冊: 下載  另:中文翻譯版本  源地址  (需要梯子)  鏡像1、 鏡像2 、 鏡像3   離線版本打包    項目發起人: SunJW  (需要梯子)

六、一些視頻(以下均為Google 2013 I/O大會的現場視頻,視頻較多持續更新中…)

  • Android Studio  的新特性官方講解視頻,我在官方技術博客上下載下來,上傳到網盤,希望對大家有幫助。 下載地址
  • Android引入Gradle的官方講解視頻  下載地址 。
  • Google 2013 IO大會上抽出40多分鐘時間講解了Android Custom View的底層原理和書寫方法。非常值得一看! 下載地址 。
  • IO大會上還講解了高性能Android RenderScript的原理和使用方法,搞圖形圖像必備良品。 下載地址
  • 大會上還向開發者講解了如何實現簡潔、快速的網絡請求。包括常用的JSON、AsyncTask,還提出了一種網絡負荷較重情況下的解決方案RequestQueue(請求隊列),提升自己技術必備視頻。 下載地址
  • Android 藍牙 操作最佳實踐。 下載地址
  • Android ui 設計官方指南  下載地址
  • Android游戲開發 官方講解視頻  下載地址

七、高價值鏈接

  • Android官方博客  提供一些跟Android相關的即時咨詢。(需要梯子)
  • Android官方技術博客  主要提供一些新工具(如Android Studio),新技術(如每次更新帶來新特性)的演示和講解。(需要梯子)
  • 23code.com : 超強烈推薦,裡面收集了非常多漂亮的Android開源項目。
  • StylingAndroid : 時常介紹Android的新特性。
  • AndroidViews  Android View組件收集站點。
  • 那兩年煉就的Android內功修養  (這是一篇Android入門到提高的文章,內容很全面,而且由淺入深,強烈推薦,來自老羅的Android之旅)
  • Android-er  :專注Android好多年的一個老外的Blog。(需要梯子)
  • Android-Pattern :Android的一些設計模式。

八、集成其他開發特性(懶人專用)

  • ORM:  Object-relationship mapping,如果你不知道什麼是ORM設計, Google 。 目前Android上主要有三個ORM開源庫。 greenDAO 、 OrmLite 、 AndrORM 。排序基本代表性能。 greenDao和Ormlite性能測試    Ormlite和Androrm性能對比,主要是原理實現決定的性能差異(GreenDao采用生成數據表類文件,其他的則采用了反射…)。如果對數據庫性能要求很高,那麼采用greenDao,如果想圖方便采用OrmLite或者AndrORM。
  • ORM2: ActiveAndroid,另一個Android ORM組件,做的非常棒,推薦。 GitHub
  • sprinkles: 有一個ORM組件。  GitHub
  • android-priority-jobqueue:Android Job隊列。輕松實現後台task管理,保證代碼更清晰,低耦合。 GitHub
  • androidquery: 簡單的Android框架,讓寫代碼變得更簡單。 Google Code

九、專注Android的Blog

  1. http://www.trinea.cn/  關注Android性能還有一些小細節的,感謝VilenEera推薦。
  2. http://blog.csdn.net/jj120522  解決很多關於Android生產環節的開發細節,感謝star的推薦。
  3. https://github.com/Trinea/android-open-project  由Trinea收集的很多關於Android第三方特征庫的Repo。
  4. http://linkyan.com/  就職於花瓣,專注於Android。

十、從這些項目中學習組件的用法

  1. Android-GitHub: GitHub官方Android客戶端(感謝 Liu Chong 推薦),用到了以下幾個項目:
    • ActionBarSherlock
    • ViewPagerIndicator
    • RoboGuice
    • android-maven-plugin
    • CodeMirror

原文: http://blog.csdn.net/caoyouxing/article/details/42418591

十一、項目推薦使用的第三方開源庫

1. 使用上拉更多,下拉刷新:https://github.com/JosephPeng/XListView-Android 
這個是github上面更為火爆的:https://github.com/chrisbanes/Android-PullToRefresh

2. 側滑的菜單: SlidingMenu.rar (自己導入support-4v包)推薦github上面一個很好的庫,不過這個庫有少少錯誤,修改過來就好了,附上github地址與修改地址。 
github: https://github.com/jfeinstein10/SlidingMenu 
修改地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=262755&reltid=249556&pre_thread_id=0&pre_pos=5&ext=CB 
其實修改的問題就是: 修改SlidingMenu library中的 SlidingFragmentActivity,讓它繼承於SherlockFragmentActivity,重新編譯library導入

3. 水平移動導航條關聯ViewPage:

http://www.eoeandroid.com/thread-175041-1-1.html

3.1 這個是ViewPage帶動畫的,比較優秀:https://github.com/jfeinstein10/JazzyViewPager

4. 數據庫處理使用ormlite:http://ormlite.com/(文檔全,注解的形式因此較慢) or      greenDroid:https://github.com/greenrobot/greenDAO(據評測最快,不過每次需要java編譯較為麻煩)   or    ActiveAndroid:https://github.com/pardom/ActiveAndroid(沒有使用過)    or    https://github.com/satyan/sugar(輕量簡單, 下次項目使用)

5. get,post的請求使用:https://github.com/loopj/android-async-http  或者  使用nio的庫:https://github.com/koush/ion 
https://github.com/koush/AndroidAsync  庫支持程序退出後繼續下載

6. 圖片加載,包括ListView顯示圖片加載使用:https://github.com/square/picasso ,推薦這個,代碼中考慮的更為的周全

https://github.com/thest1/LazyList  這個是我在項目中使用的

7. Json數據解析,有很多種,推薦使用FastJason:http://code.alibabatech.com/wiki/display/FastJSON/Home

8. ListView帶快速搜索與鍵入搜索: listview右則搜索.rar

9. 推薦一個AFinal框架,不錯,集合了FinalDB、FinalActivity、FinalHttp、FinalBitmap四個功能與一身,不過在單一使用的情況下,還是使用單一功能的框架比較好

10. 仿IPhone時間滾輪控件: iPhone時間轉輪控件.rar

11. 在android sdk3.0以下使用ActionBar  安裝使用教程(親測)http://blog.csdn.net/daguaio_o/article/details/8028695

12. 多線程多任務隊列斷點下載,同時也提供開始、暫停功能,更多功能有待發掘,開源。本身jar有500k,感覺有點兒大,建議根據自己需要提取所需的代碼。https://github.com/white-cat/ThinkAndroid

13. GreenDroid 一個漂亮的android ui庫,推薦使用QuickAction

14. 手勢放大縮小,雙擊放大縮小圖片:https://github.com/jasonpolites/gesture-imageview

15. android緩存框架:https://github.com/yangfuhai/ASimpleCache

16. 把優酷、土豆等取出它們真是的視頻播放地址:http://vparser.com/

17. 開源中國的Maven庫:http://maven.oschina.net/static/help.html

18. 針對新浪微博,騰訊微博的認證與分享demo:https://github.com/cstdr/WeiboSDKDemo.git

19. 一個可以替換ImageView的工具,smartImageView,來自github:http://loopj.com/android-smart-image-view/

20. 圖片放大與縮小:github的phoneView  如果需要在放大縮小上再加上旋轉,請參考集合項目https://github.com/codepanda-ch/android-gestureimageview

21. 強大的時間處理:joda     http://sourceforge.net/projects/joda-time/files/joda-time/2.3/

22. 功能眾多的工具包:apcahe lang       http://commons.apache.org/proper/commons-lang/download_lang.cgi

23. 收集了很多的github上面的開源庫列表: https://github.com/Trinea/android-open-project

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved