【開源框架】Android之史上最全最簡單最有用的第三方開源庫收集整理,有助於快速開發,歡迎各位網友補充完善
Android開源庫
自己一直很喜歡Android開發,就如部落格簽名一樣, 我是程式猿,我為自己代言 。
在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫,推薦給在苦苦尋找的開發者,而且我會 不定期的更新 這篇文章。
Android下的優秀開發庫數不勝數,在本文中,我列舉的多是開發流程中最常用的一些。如果你還想了解更多的Android開源庫,可以關注我的部落格,每一個庫都是我認真檢視或者編譯執行的,希望對你產生幫助。
一、相容類庫
- ActionBarSherlock : Action Bar是Android 3.0後才開始支援的,ActionBarSherlock是讓Action Bar功能支援2.X後的所有平臺,而且他會自動的判斷是呼叫原生Action Bar還是使用擴充套件ActionBar。在我的小熊詞典裡有用到這個庫,而且很多非常知名的App也在使用這個庫。
- Android-ViewPagerIndicator : 這是與ViewPager相容的一個分頁指示器庫。分頁指示器(Friends 和 Suggested就是分頁,而下面藍色的小條就是指示器,ViewPagerIndicator支援多種樣式的指示器。): GitHub
- NineOldAndroids : NineOldAndroids 將
Jake Wharton , 非常厲害的一個人,Github關注量超過 1.6K ,如果你也做Android開發或者即將開始學習Android開發,一定要去Follow他,而且留意一下他每次的star和follow資訊,經常會有很驚奇的發現。
- HoloEverywhere :在Android 4.0時,Google引入了新的主題風格— Holo ,多數廠商都想統一介面設計UI,因此更加具有相容性的Holo主題庫 HoloEveryWhere 便成為很多開發者的選擇。在Android的官方Blog中也對 HoloEveryWhere 這個庫有所推薦,
- Android-Datepicker : 相容Android 4.0的 datepicker 至Android
2.2。 GitHub
二、擴充套件功能庫
- SlidingMenu : SlidingMenu 能非常容易的讓開發者實現程式的抽屜效果,所謂的抽屜效果如下圖所示,通常被用作撥出選單。而且SlidingMenu能很方便的與ActionBarSherlock融合,在官方GitHub上有關於如何融合的說明。 GitHub
同時,想要達到相同功能也可以看另一個Drawer設計: Android-Undergarment
- AppMsg : 優雅的彈出類似Toast的訊息提示,支援3種狀態Alert,Confirm以及Info。 GitHub
- Drag-Sort-ListView : 很多人都用過在一個ListView中通過拖拽對已有的資料進行排序操作。Drag-Sort-Listview就是實現這一功能的開源庫。 GitHub
- Android-Flip : 輕鬆實現類似FlipBoard的翻頁功能。 GitHub
- Android-PullToRefresh : Android下拉重新整理元件。 GitHub
此外,該作者還有另外一個實用度和關注量極高的專案–另一種 Android ActionBar 的實現: GitHub
另:GitHub上另一個Android-PullToRefresh的實現。 GitHub
- ActionBar-PullToRefresh: 基於ActionBar的下拉重新整理元件,在下拉的時候會替換掉ActionBar,顯示更新中… GitHub Demo下載
- picasso: 程式中經常面臨載入網路圖片的情況,成熟做法:非同步下載->快取->顯示,Picasso一行程式碼就可這三步輕鬆完成。 GitHub GitHubPage ,GitHub上圖片非同步載入快取類庫很多,你也可嘗試使用 Android-Universal-Image-Loader 或者 LazyList 後面將介紹到的afinal(國人專案)也具有此功能。
- Card-UI: Google很早之前開始在自家的App內使用卡片式佈局,CardUI極其美觀大方,想要在自己的App中整合卡片UI佈局,那麼就輕鬆地用這個專案吧。 GitHub 或者你也可以使用這個庫來完成卡片佈局。 CardLib
- Android-DragArea:Android拖拽排序,拖拽移動 庫。 GitHub (Opera Android瀏覽器的拖拽排序就是用的這個庫)
- Android-StaggeredGrid: Android 下類pinterest佈局。 GitHub
Android 類 Pinterest 佈局
- FlipImageView: 通過擴充套件ImageView,實現了ImageView的各種翻轉效果。 GitHub 體驗地址
- SmoothProgressBar:平滑的ProgressBar,各種效果。 GitHub 體驗地址
各式各樣的ProgressBar
-
SuperToasts: 一個憤青對Toast的超強擴充套件,支援Toast中顯示Progressbar,顯示圖片,顯示文等等效果,快去感受下吧! Play GitHub
- AndroidFloatLabel:Android Textview 浮動提示,效果是類似下圖的。 GitHub
浮動提示
- cropper:Android截圖和旋轉庫,輕鬆實現頭像和一些場景下的圖片操作。 GitHub
Android Cropper
- StickyGridHeaders:給GridView加上Header。 GitHub
GridHeader
- Background-ViewPage:支援背景圖同時滑動的ViewPager。 感受地址 GitHub
- GoogleStyle-Datatime-Picker:做的很精緻的Google風格的時間選擇器。 Play GitHub
三、工具類庫:
首先,就我個人開發經驗,總結一下平常用到的一些最常用的功能:
- 下載,比如圖片,檔案。
- 將下載的檔案進行解壓。
- 請求伺服器,比如說上傳登陸資訊,更新某些資料,又或者上傳頭像檔案。
- 從檔案系統中選擇要操作的檔案(圖片,拍照,視訊,拍攝視訊)。
- 有時候也需要爬取某些網頁資料。
- 儲存一些配置資訊
- 播放視訊
- 再有一個特殊需求就是關乎Android程式UI設計,圖示是個很麻煩的問題。每次都難以找到合適的Android 設計UI。
隨後,我將很有針對性的推薦一些功能庫,來簡化上面的問題。
- afinal : afinal 是一個很方便的工具庫。 GitHub 作者部落格 (注:國人專案喲)
- 一行程式碼就可以對資料庫進行增刪改查。
- 完全註解方式就可以進行UI繫結和事件繫結。無需findViewById和setClickListener等。
- 輕鬆實現Android上傳檔案,POST資料,下載檔案(支援斷點續傳,隨時停止下載任務 或者 開始任務)。
- 一行程式碼 載入網路圖片。
- android-async-http : Android下的非同步HTTP庫。 GitHub
文件 PS:作者的GitHub值得關注。
- 傳送非同步http請求,並且可在回撥函式中處理返回響應Response。
- http請求在thread執行緒,不會阻塞UI執行緒。
- 請求使用執行緒池(ThreadPool)實現,優化了併發的資源使用。
- 支援Multipart 檔案上傳。
- 如果Request請求失敗,會自動請求。
- 支援Json解碼。
- 支援儲存Cookies到Preference中。
- 支援gzip處理Request以及Response。
- 整個庫只有19KB。
- http-requests : Java http請求庫,設計的很優雅的一個庫,推薦。 GitHub
- async-http-client : Android下的非同步 Http 和 WebSocket 庫。 GitHub
- 支援代理設定
- 支援分片兒處理請求返回內容
- 支援WebSocket
- zt-zip: 壓縮和解壓庫。 GitHub
- 壓縮和解壓
- 單獨操作檔案壓縮和解壓。
- 替換zip檔案中的某個檔案
- aFileChooser :檔案選擇器,用於選擇需要操作的檔案 GitHub
- image-chooser-library : 圖片和視訊的選擇庫。 GitHub Demo
- jsoup: HTML解析,並且能很好理解DOM,CSS,以及JQuery。 GitHub 官方 PS:這是java庫。做網頁爬蟲(Crawler,Robot)必備。
- toml: 這是個跨語言的配置資訊存取方案。 GitHub
- Androiton-Action-Bar-Icons: 一個針對Android 優化過的ICON圖示集。 GitHub Demo
- 推薦一個Android整體框架:ThinkAndroid 集成了ioc,orm,下載,快取等模組,能讓開發更加快速和高效,同時還是國人專案。 GitHub
- 如果你想要更快的網路傳輸和載入速度可以試試OKHTTP,他實現了Google開發的SPDY協議,通過複用一個Socket,縮短網路載入時間。 關於SPDY看這裡 OKHTTP
- Android-ProgressFragment :等待資料的時候,支援顯示等待符號的Fragment控制元件。 GitHub
- 關於播放視訊,不要再去研究什麼FFMPEG了,too slow,國人有個非常非常出色的開源專案叫Vitamio,讓你播放視訊簡單如abc。 GitHub 官方網站
- AndroidCommon :Android常用的一些庫和功能,如快取,下拉列表,下載管理,靜默安裝等。感謝 Trinea GitHub
- ion: 讓Android的網路操作變得極其簡單,支援非同步獲取和處理JSON,支援Android檔案下載(同時支援下載進度條繫結),支援安全連結和代理。超級推薦! GitHub
四、圖示資源:
五、一些手冊
六、一些視訊(以下均為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開源專案。
- AndroidViews Android View元件收集站點。
- 那兩年煉就的Android內功修養 (這是一篇Android入門到提高的文章,內容很全面,而且由淺入深,強烈推薦,來自老羅的Android之旅)
- Android-er :專注Android好多年的一個老外的Blog。(需要梯子)
八、整合其他開發特性(懶人專用)
- 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. 使用上拉更多,下拉重新整理: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:
3.1 這個是ViewPage帶動畫的,比較優秀: https://github.com/jfeinstein10/JazzyViewPager4. 資料庫處理使用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
9. 推薦一個AFinal框架,不錯,集合了FinalDB、FinalActivity、FinalHttp、FinalBitmap四個功能與一身,不過在單一使用的情況下,還是使用單一功能的框架比較好
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
請尊重作者的勞動成果,轉載註明出處,謝謝!
相關推薦
【開源框架】Android之史上最全最簡單最有用的第三方開源庫收集整理,有助於快速開發,歡迎各位網友補充完善
Android開源庫 自己一直很喜歡Android開發,就如部落格簽名一樣, 我是程式猿,我為自己代言 。 在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫,推薦給在苦苦尋找的開發者,而且我會 不定期的更新 這篇文章。 Android下的優秀
[轉]【開源框架】Android之史上最全最簡單最有用的第三方開源庫收集整理,有助於快速開發
原文地址:http://www.tuicool.com/articles/jyA3MrU Android開源庫 自己一直很喜歡Android開發,就如部落格簽名一樣, 我是程式猿,我為自己代言 。 在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫
【開源框架】Android之史上最全最簡單最有用的第三方開源庫收集整理
Android開源庫 自己一直很喜歡Android開發,就如部落格簽名一樣, 我是程式猿,我為自己代言。 在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫,推薦給在苦苦尋找的開發者,而且我會不定期的更新這篇文章。 Android下的優秀開發庫數不
【開源框架】Android 好用的框架與UI效果demo收集,歡迎各位大俠補充
索引貼 持續更新 github開源專案收集貼 Android 初級到高階開發學習中的日常積累收集 目錄 UI效果與處理 Ui繫結註解 二維碼 Android動畫 Android圖表 文字輸入框 選擇列表
Android之史上最全最簡單最有用的第三方開源庫收集整理
Android開源庫 自己一直很喜歡Android開發,就如部落格簽名一樣, 我是程式猿,我為自己代言 。 在摸索過程中,GitHub上搜集了很多很棒的Android第三方庫,推薦給在苦苦尋找的開發者,而且我會 不定期的更新 這篇文章。 Android下的優秀開發庫數不勝數,在本文中,我列舉的多是
【SSH框架】系列之 Spring 整合 Hibernate 框架
操作 enter pda 就是 負責 spring配置 1.0 port -s 1、SSH 三大框架整合原理 Spring 與 Struts2 的整合就是將 Action 對象交給 Spring 容器來負責創建。 Spring 與 Hibernate 的整合就是將
Android之——史上最簡單自定義開關按鈕的實現
很多時候,我們在很多無論是Android還是IOS的APP中都會遇到這樣的一種效果,有一個按鈕,我們點選一下,便會滑動一下,一會顯示“開”,一會顯示“關”,這便是開關按鈕了,比如:很多Android手機的設定功能裡,就有很多功能是用開關按鈕實現的,那麼這些開關按鈕時如何實
Android之——史上最簡單圖片輪播廣告效果實現
如今的Android開發需求越來越來多,實現效果越來越酷炫,很多Android APP都要實現PC網站上那樣的圖片輪播效果,那麼,這些圖片的輪播效果是如何實現的呢?下面,我就跟大家一起來實現這些酷炫的功能。 一、原理 首先,將這些要輪播的圖片和一些文字分別放置在不同的資料集合中,程式啟動的時候預設
Android之——史上最簡單最酷炫的3D圖片瀏覽效果的實現
如今,Android開發已經成為移動互聯開發領域中一支不可或缺的力量,那麼Android中要實現3D的效果那也就是合情合理的事情了。那麼,如何在Android中實現像IOS中那樣的3D圖片瀏覽效果呢?下面,鄙人將重磅推出今天的重點博文,和大家一起在Android中實現酷炫
【乾貨總結】:可能是史上最全的MySQL和PGSQL對比材料
【乾貨總結】:可能是史上最全的MySQL和PGSQL的對比材料 運維了MySQL和PGSQL已經有一段時間了,最近接到一個數據庫選型需求,於是便開始收集資料整理了一下,然後就有了下面的對比表 關鍵詞:PostgreSQL 11、MySQL5.7 比較版本:PostgreSQL 1
我的Android進階之旅------>【強力推薦】Android開源圖表庫XCL-Charts版本釋出及展示頁
因為要做圖表相關的應用,後來百度發現了一個很好的Android開源圖表庫(XCL-Charts is a free charting library for Android plat
【滲透課程】第六篇-上傳漏洞之解析漏洞
文件的 配置文件 密碼 3.1 安裝目錄 ppa xxx 表單 圖片 上傳漏洞,我們為什麽要上傳?因為我們說過。在網站服務器上 肯定有一個Web容器,它裏面裝的就是Web應用程序 。某些腳本具有一定的執行和修改權限。這些權限可以說是服務器給客戶端訪問時提供的服務的同時提供的
【滲透課程】第七篇-上傳漏洞之繞過上傳漏洞
ng- 相關 都是 http itl 了解 利用 存在 上傳 前一篇我們已經講過了上傳漏洞的解析漏洞,在某些時候,知道網站存在哪個解析漏洞,那麽我們就可以更好的利用上傳漏洞 這個知識點在我們前面就有粗略說過了(http://www.yuntest.org/index.php
【滲透課程】第八篇-上傳漏洞之文本編輯器上傳
fckeditor -m ive conf ima xheditor ger .org 圖片上傳 Oday 常見的文本編輯器有CKEditor,Ewebeditor,UEditor,KindEditor,XHeditor等。其包含的功能類似,比如,圖片上傳、視頻上傳、遠程下
【入門篇】ANDROID開發之BUG專講
world 自然 執行 類型 效率 str 積累 全部 href 話說諸葛亮是一個優秀的程序員,每個錦囊都是應對不同的case而編寫的。可是優秀的程序員也敵只是更優秀的bug。六出祈山。七進中原,鞠躬盡瘁,死而後已的諸葛亮僅僅由於有一
【集合框架】JDK1.8源碼分析之HashMap(一) 轉載
.get 修改 object set implement .com 功能 數組元素 帶來 一、前言 在分析jdk1.8後的HashMap源碼時,發現網上好多分析都是基於之前的jdk,而Java8的HashMap對之前做了較大的優化,其中最重要的一個優化就是桶中
【轉載】【JAVA秒會技術之圖片上傳】基於Nginx及FastDFS,完成圖片的上傳及展示
相互 沒有 con 性能 ext 存儲服務器 網絡 管理 代理配置 基於Nginx及FastDFS,完成商品圖片的上傳及展示 一、傳統圖片存儲及展示方式 存在問題: 1)大並發量上傳訪問圖片時,需要對web應用做負載均衡,但是會存在圖片共享問題 2)web應
【SSH框架】之Struts2系列(一)
核心 mapping 調度 fault code 組件 -i -c params 微信公眾號:compassblog 歡迎關註、轉發,互相學習,共同進步! 有任何問題,請後臺留言聯系 1、Struts2框架概述 (1)、什麽是Struts2 Struts2是一種基於M
【SSH框架】之Hibernate系列一
路徑 應用 port setname domain 配置文件 學習 縮進 object 微信公眾號:compassblog 歡迎關註、轉發,互相學習,共同進步! 有任何問題,請後臺留言聯系! 1、Hibernate框架概述 (1)、什麽是HibernateH
【SSH框架】之Spring系列(一)
oca getc per 名稱 寫入 xmla java開發 無需 不能 微信公眾號:compassblog 歡迎關註、轉發,互相學習,共同進步! 有任何問題,請後臺留言聯系! 1、前言 前面更新過幾篇關於 Struts2 框架和 Hibernate 框架的文章,但鑒於