最新最全Android 常用開源庫總結

一 、基本控件

TextView

EditText

ImageView

Button

Spinner

CheckBox

ProgressBar(包含loading動畫)

Seekbar

RatingBar

  • MaterialRatingBar 與 Google 系應用設計相同、支持拉伸、修正原生實現(xiàn)諸多問題的星級評分條

Toast

RecyclerView

  • BaseRecyclerViewAdapterHelper 萬能adapter

  • MultiChoiceAdapter 多選adapter

  • SwipeRecyclerView 基于RecyclerView的封裝,提供了Item側滑菜單、Item滑動刪除、Item長按拖拽、添加HeaderView/FooterView、加載更多、Item點擊監(jiān)聽等基本功能。

  • EasyRecyclerView 封裝RecyclerView

  • StickyItemDecoration 懸浮頭部

  • PinnedSectionItemDecoration 懸浮頭部

  • recyclerview-animators RecycleView的項目動畫的Android組件庫

  • UltimateRecyclerView 能強大的Recyclerview,包括了下拉刷新,加載更多,多種動畫,空數(shù)據(jù)提示,拖動排序,視差處理,工具欄漸變,滑動刪除,自定義floating button,多種刷新效果,scrollbar等等元素,而且使用起來跟recyclerview一樣的方便。

  • epoxy Epoxy采用可組合的方式來創(chuàng)建列表。列表中的每個item由一個model代表,model定義了item的布局,id以及span。model還負責處理數(shù)據(jù)到視圖的綁定,在視圖被回收的時候釋放資源。如果要顯示這些model則把它們添加到Epoxy的adapter中,adapter為你處理復雜的顯示問題。

  • XRecyclerView XRecyclerView實現(xiàn)了下拉刷新,滾動到底部加載更多以及添加header功能的的RecyclerView。使用方式和RecyclerView完全一致,不需要額外的layout,不需要寫特殊的adater。 加載效果內置了AVLoadingIndicatorView上的所有效果,可以根據(jù)需要指定。

  • RecyclerViewPager RecyclerViewPager基于 RecyclerView 實現(xiàn)的 ViewPager,可自定義 Page 切換敏感度,支持垂直 ViewPager,支持類 Gallary 效果,支持無限循環(huán)。

  • SuperRecyclerView SuperRecyclerView主要特性包括:1、當adapter沒有設置的時候使用ProgressBar(進度條);2、當adapter時空的時候使用EmptyView;3、SwipeRefreshLayout (Google's one);4、Swipe To Dismiss;5、Sticky headers;6、無限滾動,當?shù)竭_最后一項時,加載更多數(shù)據(jù);

  • LRecyclerView 下拉刷新,自動加載更多;仿IOS側滑Item刪除菜單

  • LayoutManagerGroup 自定義RecyclerView 的LayoutManager實現(xiàn)幾種炫酷的效果。

  • android-advancedrecyclerview 自定義RecyclerView (2019-03-29 新增)

日歷、時鐘

Webview

ScrollView

ViewPager

WheelPicker

導航欄

二、功能相關

圖片選擇

圖片加載

音視頻

  • ExoPlayer 谷歌出品的視頻播放器

  • JiaoZiVideoPlayer 餃子視頻播放器

  • ijkplayer ijk 播放器

  • GSYVideoPlayer一個第三方視頻播放庫,基于bilibili 開源的 ijkplayer,可自定義性也還不錯,
    主要使用這個庫實現(xiàn)類似微博等視頻列表根據(jù)滾動判斷自動播放,

  • VitamioBundle 多媒體播放器

  • VideoPlayerManager 幫助實現(xiàn)VideoPlayer控制,使得它更容易使用ListView和recyclerview。

  • PlayerBase 專注于播放視圖組件的高復用性和組件間的低耦合,輕松處理復雜業(yè)務。

  • DanmakuFlameMaster 彈幕

  • AndroidVideoCache 視頻緩存

  • TicktockMusic 一款 material design 風格的音樂播放器,可以播放本地和網(wǎng)絡音樂,并且提供歌詞顯示。

  • Timber 一個完整的音樂播放器

  • NiceVieoPlayer 支持列表,完美切換全屏、小窗口的Android視頻播放器(2019-03-27 新增)

刷新控件

動畫

輪播圖

權限

二維碼

新手引導

  • NewbieGuide Android 快速實現(xiàn)新手引導層的庫,通過簡潔鏈式調用,一行代碼實現(xiàn)引導層的顯示

  • GuideView 能夠快速為任何一個View創(chuàng)建一個遮罩層,支持單個頁面,多個引導提示,支持為高亮區(qū)域設置不同的圖形,支持引導動畫,方便擴展,良好支持fragment

輕存儲

MMKV一款比sharepreferences稍重,遠遠小于數(shù)據(jù)庫量級,但性能卓越的存儲框架,由騰訊旗下的微信開發(fā)。(2020.05.09 新增)

數(shù)據(jù)庫

  • greenDAO

  • ActiveAndroid Android Sqlite orm 的 db 工具類

  • realm-java 移動端的數(shù)據(jù)庫,適用于 Phone、Tablet、Wearable,支持 ORM,線程安全、支持連表及數(shù)據(jù)庫加密,比 SQLite 性能更好

  • DBFlow Android SQLite ORM 工具庫。綜合了 Active Android, Schematic, Ollie,Sprinkles 等庫的優(yōu)點;通過注解實現(xiàn),性能好;能生成 ContentProvider。

  • SnappyDB key-value數(shù)據(jù)庫,非常流行的NoSQL數(shù)據(jù)庫

  • LitePal 不編寫SQL語句的情況下完成大多數(shù)數(shù)據(jù)庫操作,包括創(chuàng)建或升級表、CRUD操作、聚合函數(shù)等

  • objectbox-java ObjectBox是一個超高速的面向對象的數(shù)據(jù)庫,具有很強的關系支持。ObjectBox嵌入到Android、Linux、MacOS或Windows應用程序中。

  • wcdb 一個高效、完整、易用的移動數(shù)據(jù)庫框架,基于(https://github.com/sqlcipher/sqlcipher)[SQLCipher][SQLCipher]),支持iOS, macOS和Android。

  • Android-Debug-Database 數(shù)據(jù)庫調試工具

圖表

菜單

手勢關閉

事件處理

換膚

狀態(tài)欄

顏色選擇器

布局相關

加載反饋

  • LoadSir擴展性良好的加載反饋頁管理框架(2020-05-09 新增)

屏幕適配

其他

三、網(wǎng)絡相關

http

  • RxEasyHttp基于RxJava2+Retrofit2實現(xiàn)簡單易用的網(wǎng)絡請求框架

  • retrofit

  • okhttp

  • okhttp-OkGo 封裝了 OkHttp 的網(wǎng)絡請求框架

  • {停止維護} okhttputils okhttp的輔助類

  • NoHttp 實現(xiàn)Http標準協(xié)議框架,支持多種緩存模式,底層可動態(tài)切換OkHttp、URLConnection。

  • xUtils3 xUtils 包含了orm, http(s), image, view注解

  • afinal Afinal是一個android的ioc,orm框架,內置了四大模塊功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp

  • Fast-Android-Networking 支持http2的網(wǎng)絡庫(2019-03-29 新增)

json

下載、上傳

rx

  • RxAndroid 對RxJava在Android上的擴展,使得Android上也很容易實現(xiàn)reactive components,簡化線程操作,從而寫出很漂亮的代碼。

  • RxJava

  • RxCache 專門為Retrifit打造的緩存庫

  • ReactiveNetwork 檢測網(wǎng)絡狀態(tài)

  • RxLifecycle 管理rx的生命周期

  • AutoDispose rx 工具類

四、自定義View

蛛網(wǎng)圖

翻書效果

圖案解鎖

望遠鏡效果(部分高亮)

其他

五、其他

工具類

  • utilcodex一個android 工具庫,里面有非常多的工具類,當然實際項目用不到這么多,所以可以根據(jù)需求copy代碼就好,不用集成(2020.05.09 新增)

  • AndroidUtilCode 強大易用的安卓工具類庫

  • RxTools Android開發(fā)人員不得不收集的工具類集合

  • butterknife 利用 annotation 幫你快速完成 View 的初始化,減少代碼

熱修復

插件化

  • RePlugin RePlugin是一套完整的、穩(wěn)定的、適合全面使用的,占坑類插件化方案,由360手機衛(wèi)士的RePlugin Team研發(fā),也是業(yè)內首個提出”全面插件化“(全面特性、全面兼容、全面使用)的方案。(2019-03-27 新增)

簽名打包

  • walle Android Signature V2 Scheme簽名下的新一代渠道包打包神器

  • packer-ng-plugin 100個渠道包只需要10秒鐘

反編譯

依賴注入

  • dagger 依賴注入,適用于 Android 和 Java

日志

容器

  • Atlas一個運行于Android系統(tǒng)上的一個容器化框架

路由

  • ARouter 幫助 Android App 進行組件化改造的路由框架

內存泄漏檢測

布局優(yōu)化

  • X2C 在編譯生成APK期間,將需要翻譯的layout翻譯生成對應的java文件,這樣對于開發(fā)人員來說寫布局還是寫原來的xml,但對于程序來說,運行時加載的是對應的java文件。 (2019-03-27 新增)

畫圖

圖片壓縮

攝像頭

富文本編輯器

指示器

  • MagicIndicator 強大、可定制、易擴展的 ViewPager 指示器框架。

  • dotsindicator 視圖頁導航點指示器(2019-03-27 新增)

自定義字體加載

文件加密

表情包

相機濾鏡

車牌識別

鍵盤沖突

藍牙

  • Android-BLE AndroidBLE藍牙框架,包括掃描、連接、設置通知、發(fā)送數(shù)據(jù)、讀取、接收數(shù)據(jù)和OTA升級以及各種直觀的回調,近乎一行代碼植入項目,可擴展配置藍牙相關操作。

測試

  • Matrix 通過各種性能監(jiān)控方案,對性能監(jiān)控項的異常數(shù)據(jù)進行采集和分析,輸出相應的問題分析、定位與優(yōu)化建議,從而幫助開發(fā)者開發(fā)出更高質量的應用。

  • pandora 一款無需ROOT、可以直接在應用內查看和修改包括網(wǎng)絡、數(shù)據(jù)庫、UI等的工具箱,適合開發(fā)和測試階段的各種問題的快速定位。

  • ArgusAPM 。ArgusAPM是360移動端產(chǎn)品使用的可視化性能監(jiān)控平臺,為移動端APP提供性能監(jiān)控與管理,可以迅速發(fā)現(xiàn)和定位各類APP性能和使用問題,幫助APP不斷的提升用戶體驗。(2019-03-27 新增)

  • AndroidPerformanceMonitor 非侵入式的性能監(jiān)控組件

  • UETool 一個各方人員(設計師、程序員、測試)都可以使用的調試工具。它可以作用于任何顯示在屏幕上的 view,比如 Activity/Fragment/Dialog/PopupWindow 等等。(2019-03-27 新增)

  • robolectric 單元測試 (2019-03-29 新增)

其他

作者:i小灰
鏈接:http://www.lxweimin.com/p/3fde87405411
來源:簡書
著作權歸作者所有。商業(yè)轉載請聯(lián)系作者獲得授權,非商業(yè)轉載請注明出處。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,327評論 6 537
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,996評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,316評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,406評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,128評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,524評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,576評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,759評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,310評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,065評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,249評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,821評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,479評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,909評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,140評論 1 290
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,984評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,228評論 2 375