Android优秀开源框架集
Android優(yōu)秀開(kāi)源框架介紹
- 開(kāi)篇
- 網(wǎng)絡(luò)請(qǐng)求框架
- 1. okhttp
- 2. retrofit
- 3. android-async-http
- android圖表框架
- 4. MPAndroidChart
- 圖片加載框架
- 5. glide
- 6. picasso
- 7. Android-Universal-Image-Loader
- 8. fresco
- 動(dòng)畫(huà)庫(kù)
- 9. lottie-android
- 10. Material-Animations - Activity過(guò)度動(dòng)畫(huà)
- 11. AndroidViewAnimations - View炫酷動(dòng)畫(huà)
- 12. Recyclerview-animators - 列表動(dòng)畫(huà)庫(kù)
- 工具類(lèi)開(kāi)源庫(kù)
- 13. AndroidUtilCode - 工具接口庫(kù)
- 14. zxing - 二維碼一維碼展示和解析
- 15. logger - log打印
- 16. stetho - debug調(diào)試橋
- 17. Luban - 圖片壓縮
- 18. DoraemonKit - 性能監(jiān)控助手
- 19. RxTool - android工具集
- 20. PermissionsDispatcher - 基于注解權(quán)限處理
- 21. RxPermissions - Android權(quán)限申請(qǐng)
- 22. uCrop
- 23. Fragmentation
- 24. QMUI_Android
- 25. FileDownloader - 文件下載庫(kù)
- 26. Calligraphy - 批量定義字體
- 27. AndroidAutoSize 多分辨率適配方案
- 28. glide-transformations - glide圖片轉(zhuǎn)換庫(kù)
- 29. HomeMirror
- 30. easypermissions
- 注解類(lèi)開(kāi)源庫(kù)
- 31. butterknife
- 32. androidannotations - android注解框架
- 異步操作、消息推動(dòng)、和即時(shí)通訊
- 33. EventBus-異步消息推送
- 34. RxAndroid-異步邏輯處理
- 35. Telegram-即時(shí)通訊
- 36. Signal-Android-即時(shí)通訊
- 反編譯
- 37. jadx
- 38. bytecode-viewer
- 39. Apktool
- Json
- 40. fastjson
- 下拉刷新和滑動(dòng)類(lèi)開(kāi)源庫(kù)
- 41. SmartRefreshLayout - 滑動(dòng)刷新layout
- 42. BaseRecyclerViewAdapterHelper - 多功能RecyclerViewAdapterHelper
- 43. android-Ultra-Pull-To-Refresh
- 44. Android-PullToRefresh
- 自定義View
- 45. PhotoView
- 46. CircleImageView(圓形ImageView)
- 47. SlidingMenu - 側(cè)滑菜單
- 48. Android-PickerView - 多級(jí)選擇器控件
- 49. ViewPagerIndicator - ViewPager分頁(yè)指示器
- 50. android-gif-drawable - Gif自定義控件
- 51. Matisse - 圖片視頻選擇器
- 52. vlayout - LayoutManager擴(kuò)展庫(kù)
- 53. AndroidSwipeLayout - 左右滑動(dòng)菜單
- 54. Android-ObservableScrollView - 滾動(dòng)view
- 55. FlycoTabLayout - 各種樣式的tablayout
- 56. MaterialDesignLibrary - Material設(shè)計(jì)基礎(chǔ)組件庫(kù)
- 57. AVLoadingIndicatorView - 多種loading組件
- 58. banner - 輪播組件
- 59. AndroidSlidingUpPanel - 上滑托盤(pán)面板庫(kù)
- 60. BottomBar - 底部導(dǎo)航欄組件
- 61. DanmakuFlameMaster - 烈焰彈幕庫(kù)
- 62. MaterialViewPager - Material設(shè)計(jì)的ViewPager
- 63. material-components-android - material設(shè)計(jì)組件樣式庫(kù)
- 64. cheesesquare - 新組件展示庫(kù)
- 65. StatusBarUtil - 狀態(tài)欄樣式
- 游戲引擎
- 66. libgdx
- 熱更新框架
- 67. tinker
- 播放器
- 68. ExoPlayer
- 69. GSYVideoPlayer - 視頻播放器
- 70. JiaoZiVideoPlayer - 多功能媒體播放器
- 架構(gòu)
- 71. Android-CleanArchitecture
- 72. ARoute
- 73. MVPArms
- 數(shù)據(jù)庫(kù)
- 74. greenDAO - 數(shù)據(jù)庫(kù)方案
- 75. realm-java - 數(shù)據(jù)庫(kù)方案
- WebView
- 76. VasSonic - WebView加速
- App
- 77. PocketHub - Github android app源碼
- Android 學(xué)習(xí)資料
- 78. Android_Data
- 手機(jī)插件框架及手機(jī)虛擬機(jī)
- 79. VirtualXposed - android手機(jī)的app虛擬環(huán)境
- 80. VirtualAPK - android插件框架
開(kāi)篇
? 本文中介紹框架來(lái)源,根據(jù)github android開(kāi)源框架星數(shù)排名,取前80。
? 寫(xiě)該文章的目的是為了多了解網(wǎng)絡(luò)上流行開(kāi)源框架,減少和避免重復(fù)造輪子的尷尬。
網(wǎng)絡(luò)請(qǐng)求框架
1. okhttp
簡(jiǎn)介:
? 一個(gè)處理網(wǎng)絡(luò)請(qǐng)求的開(kāi)源項(xiàng)目,是安卓端最火熱的輕量級(jí)框架,由移動(dòng)支付Square公司貢獻(xiàn)(該公司還貢獻(xiàn)了Picasso) [1]
用于替代HttpUrlConnection和Apache HttpClient(android API23 6.0里已移除HttpClient,現(xiàn)在已經(jīng)打不出來(lái))。
github地址:https://square.github.io/okhttp/
使用說(shuō)明參考鏈接:https://blog.csdn.net/u013651026/article/details/79738059
2. retrofit
簡(jiǎn)介:
? Retrofit是Square公司開(kāi)發(fā)的一款針對(duì)Android網(wǎng)絡(luò)請(qǐng)求的框架,遵循Restful設(shè)計(jì)風(fēng)格,底層基于OkHttp。
特點(diǎn)是:
- 支持同步/異步網(wǎng)絡(luò)請(qǐng)求
- 支持多種數(shù)據(jù)的解析&序列化格式(Gson、json、XML等等)
- 通過(guò)注解配置網(wǎng)絡(luò)請(qǐng)求參數(shù)
- 提供對(duì)Rxjava的支持
github地址:https://square.github.io/okhttp/
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/0fda3132cf98
3. android-async-http
簡(jiǎn)介:
? android-async-http基于回調(diào)的android異步網(wǎng)絡(luò)請(qǐng)求庫(kù),其構(gòu)建 基于Apache的HttpClient庫(kù)。
github地址:https://github.com/android-async-http/android-async-http
使用說(shuō)明參考鏈接: https://blog.csdn.net/keep_driving_xinyang/article/details/50522551
android圖表框架
4. MPAndroidChart
簡(jiǎn)介:
? MPAndroidChart 是 Android 一個(gè)強(qiáng)大且容易使用的圖表庫(kù),由PhilJay提供。
支持線狀圖、柱狀圖、散點(diǎn)圖、燭狀圖、氣泡圖、餅狀圖和蜘蛛網(wǎng)狀圖等8種不同的圖表和各種手勢(shì)。
github地址: https://github.com/PhilJay/MPAndroidChart
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/f1cfdf2dc98c
圖片加載框架
5. glide
簡(jiǎn)介:
? Glide是一個(gè)android官方推薦的開(kāi)源圖片加載框架,具有快速高效、滾動(dòng)平滑、api簡(jiǎn)單易用、支持圖片格式多(支持視頻快照,圖片,和GIF動(dòng)畫(huà))等特點(diǎn)。
github地址:https://bumptech.github.io/glide/
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/791ee473a89b
6. picasso
簡(jiǎn)介:
? 一個(gè)圖片下載和緩存開(kāi)源庫(kù),由square公司提供。
github地址:https://github.com/square/picasso
使用說(shuō)明參考鏈接:https://blog.csdn.net/tongseng/article/details/79592948
7. Android-Universal-Image-Loader
簡(jiǎn)介:
?Android-Universal-Image-Loader用于圖片下載、緩存和顯示的開(kāi)源庫(kù),特點(diǎn)是:
- 多線程的圖像加載;
- 的可能性的寬調(diào)諧對(duì)ImageLoader的配置(線程池的大小,HTTP選項(xiàng),內(nèi)存和光盤(pán)高速緩存,顯示圖像,以及其他);
- 的圖像的可能性中的緩存存儲(chǔ)器和/或設(shè)備的文件器系統(tǒng)(或SD卡);
- 可以“聽(tīng)”加載過(guò)程中;
- 可自定義每個(gè)顯示的圖像調(diào)用分隔的選項(xiàng) 。
github地址:https://github.com/nostra13/Android-Universal-Image-Loader
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/ee4c62729670
8. fresco
簡(jiǎn)介:
?fresco是一個(gè)有Facebook提供的,圖片加載框架,它支持從網(wǎng)絡(luò)、本地存儲(chǔ)或app本地資源加載圖片,在圖片加載完成時(shí),顯示默認(rèn)占位符。它有兩級(jí)緩存:一級(jí)在內(nèi)存中,另一級(jí)在本地磁盤(pán)。
github地址:https://github.com/facebook/fresco
使用說(shuō)明參考鏈接: https://www.fresco-cn.org/docs/getting-started.html
動(dòng)畫(huà)庫(kù)
9. lottie-android
簡(jiǎn)介:
? Lottie 是在 Android 和 iOS上 原生渲染 的After Effects(AE)動(dòng)畫(huà),Lottie是 Airbnb 開(kāi)源的支持Android 和 iOS 的動(dòng)畫(huà)庫(kù),它可以解析 AE 動(dòng)畫(huà)中用Bodymovin 導(dǎo)出的json文件,并在移動(dòng)設(shè)備上利用原生庫(kù)進(jìn)行渲染 。
github地址:https://github.com/airbnb/lottie-android
使用說(shuō)明參考鏈接:https://blog.csdn.net/qq_15538877/article/details/80503773
10. Material-Animations - Activity過(guò)度動(dòng)畫(huà)
簡(jiǎn)介:
?Material-Animations是google提供的Activity過(guò)渡動(dòng)畫(huà)集。
github地址:https://github.com/lgvalle/Material-Animations
使用說(shuō)明參考鏈接: https://blog.csdn.net/qq_35343446/article/details/80862876
11. AndroidViewAnimations - View炫酷動(dòng)畫(huà)
簡(jiǎn)介:
?AndroidViewAnimations是一個(gè)能實(shí)現(xiàn)很多很酷炫的 Android View動(dòng)畫(huà)的開(kāi)源庫(kù), 動(dòng)畫(huà)效果是通過(guò)借鑒 Animate.css 來(lái)實(shí)現(xiàn)的, 不僅酷炫,使用起來(lái)也非常簡(jiǎn)單。
github地址:https://github.com/daimajia/AndroidViewAnimations
使用說(shuō)明參考鏈接: https://github.com/daimajia/AndroidViewAnimations
12. Recyclerview-animators - 列表動(dòng)畫(huà)庫(kù)
簡(jiǎn)介:
? 用于Recyclerview列表項(xiàng)的動(dòng)畫(huà)庫(kù)集。
github地址:https://github.com/wasabeef/recyclerview-animators
使用說(shuō)明參考鏈接: https://github.com/wasabeef/recyclerview-animators
工具類(lèi)開(kāi)源庫(kù)
13. AndroidUtilCode - 工具接口庫(kù)
簡(jiǎn)介:
? AndroidUtilCode是一個(gè)功能強(qiáng)大且易于使用的Android庫(kù)。 該庫(kù)封裝了Android開(kāi)發(fā)中常用的功能,這些功能具有完整的演示和單元測(cè)試。 通過(guò)使用它的封裝API,您可以大大提高開(kāi)發(fā)效率。 該程序主要由兩個(gè)模塊組成,它們是開(kāi)發(fā)中常用的utilcode,以及很少用于開(kāi)發(fā)的subutil,但是utils可以有利于簡(jiǎn)化主模塊。
github地址:https://github.com/Blankj/AndroidUtilCode
使用說(shuō)明參考鏈接:https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README-CN.md
14. zxing - 二維碼一維碼展示和解析
簡(jiǎn)介:
? ZXing(“zebra crossing”)是一個(gè)開(kāi)源的、多格式的、用Java實(shí)現(xiàn)的一維/二維條碼圖像處理庫(kù),具有到其他語(yǔ)言的端口。
該項(xiàng)目可實(shí)現(xiàn)的條形碼編碼和解碼。我們目前支持以下格式:UPC-A,UPC-E、EAN-8,EAN-13、39碼、93碼、代碼128、創(chuàng)新及科技基金、庫(kù)德巴、RSS-14(所有的變體)、RSS擴(kuò)展(大多數(shù)變體)、QR碼、數(shù)據(jù)矩陣、阿茲臺(tái)克人('測(cè)試版’質(zhì)量)、PDF 417('阿爾法’的質(zhì)量)。
github地址:https://github.com/zxing/zxing
使用說(shuō)明參考鏈接: https://www.cnblogs.com/huanzi-qch/p/10097791.html
15. logger - log打印
簡(jiǎn)介:
? 簡(jiǎn)單、可讀性強(qiáng)、強(qiáng)大的log打印庫(kù)。
github地址:https://github.com/orhanobut/logger
使用說(shuō)明參考鏈接: https://github.com/orhanobut/logger
16. stetho - debug調(diào)試橋
簡(jiǎn)介:
?Stetho 是一個(gè)facebook 開(kāi)發(fā)的功能強(qiáng)大的 Android 應(yīng)用調(diào)試橋,起到橋梁的作用,連接 Android 應(yīng)用和 Chrome,通過(guò) Chrome 開(kāi)發(fā)者工具調(diào)試 Android 應(yīng)用,提供視圖元素檢查,網(wǎng)絡(luò)監(jiān)控,數(shù)據(jù)庫(kù)動(dòng)態(tài)交互,Dumpapp(可擴(kuò)展的命令行交互接口),JavaScript Console 等功能。
?當(dāng)啟用后,開(kāi)發(fā)者可以通過(guò) Chrome 桌面瀏覽器中的開(kāi)發(fā)者工具訪問(wèn)本地應(yīng)用。開(kāi)發(fā)者也可以選擇啟用可選的 dumpapp 工具提供一個(gè)強(qiáng)大的應(yīng)用內(nèi)部命令行接口。
github地址:https://github.com/facebook/stetho
使用說(shuō)明參考鏈接: https://segmentfault.com/a/1190000012075067
17. Luban - 圖片壓縮
簡(jiǎn)介:
?Luban(魯班) —— Android圖片壓縮工具,仿微信朋友圈壓縮策略。
github地址:https://github.com/Curzibn/Luban
使用說(shuō)明參考鏈接: https://github.com/Curzibn/Luban
18. DoraemonKit - 性能監(jiān)控助手
簡(jiǎn)介:
?簡(jiǎn)稱(chēng) “DoKit” 。一款功能齊全的客戶端( iOS 、Android )研發(fā)助手,你值得擁有。
github地址:https://github.com/didi/DoraemonKit
使用說(shuō)明參考鏈接: https://github.com/didi/DoraemonKit/blob/master/Doc/android_cn_guide.md
19. RxTool - android工具集
簡(jiǎn)介:
?Android開(kāi)發(fā)人員不得不收集的工具類(lèi)集合 | 支付寶支付 | 微信支付(統(tǒng)一下單) | 微信分享 | Zip4j壓縮(支持分卷壓縮與加密) | 一鍵集成UCrop選擇圓形頭像 | 一鍵集成二維碼和條形碼的掃描與生成 | 常用Dialog | WebView的封裝可播放視頻 | 仿斗魚(yú)滑動(dòng)驗(yàn)證碼 | Toast封裝 | 震動(dòng) | GPS | Location定位 | 圖片縮放 | Exif 圖片添加地理位置信息(經(jīng)緯度) | 蛛網(wǎng)等級(jí) | 顏色選擇器 | ArcGis | VTPK | 編譯運(yùn)行一下說(shuō)不定會(huì)找到驚喜。
github地址:https://github.com/Tamsiree/RxTool
使用說(shuō)明參考鏈接: https://github.com/Tamsiree/RxTool
20. PermissionsDispatcher - 基于注解權(quán)限處理
簡(jiǎn)介:
?PermissionsDispatcher是一個(gè)基于注解、幫助開(kāi)發(fā)者簡(jiǎn)單處理Android 6.0系統(tǒng)中的運(yùn)行時(shí)權(quán)限的開(kāi)源庫(kù)。避免了開(kāi)發(fā)者編寫(xiě)大量繁瑣的樣板代碼。
github地址:https://github.com/permissions-dispatcher/PermissionsDispatcher
使用說(shuō)明參考鏈接: https://www.jianshu.com/p/dd5d2e4cb353
21. RxPermissions - Android權(quán)限申請(qǐng)
簡(jiǎn)介:
?運(yùn)行權(quán)限請(qǐng)求庫(kù)。
github地址:https://github.com/tbruyelle/RxPermissions
使用說(shuō)明參考鏈接: https://github.com/tbruyelle/RxPermissions
22. uCrop
簡(jiǎn)介:
?Android版本圖片裁剪庫(kù)。
github地址:https://github.com/Yalantis/uCrop
使用說(shuō)明參考鏈接: https://github.com/Yalantis/uCrop
23. Fragmentation
簡(jiǎn)介:
? 功能強(qiáng)大的Fragment管理庫(kù)。
? 為"單Activity + 多Fragment","多模塊Activity + 多Fragment"架構(gòu)而生,簡(jiǎn)化開(kāi)發(fā),輕松解決動(dòng)畫(huà)、嵌套、事務(wù)相關(guān)等問(wèn)題。
github地址:https://github.com/YoKeyword/Fragmentation
使用說(shuō)明參考鏈接: https://github.com/YoKeyword/Fragmentation/blob/master/README_CN.md
24. QMUI_Android
簡(jiǎn)介:
?QMUI Android 的設(shè)計(jì)目的是用于輔助快速搭建一個(gè)具備基本設(shè)計(jì)還原效果的 Android 項(xiàng)目,同時(shí)利用自身提供的豐富控件及兼容處理,讓開(kāi)發(fā)者能專(zhuān)注于業(yè)務(wù)需求而無(wú)需耗費(fèi)精力在基礎(chǔ)代碼的設(shè)計(jì)上。不管是新項(xiàng)目的創(chuàng)建,或是已有項(xiàng)目的維護(hù),均可使開(kāi)發(fā)效率和項(xiàng)目質(zhì)量得到大幅度提升。
github地址:https://github.com/Tencent/QMUI_Android
使用說(shuō)明參考鏈接: https://qmuiteam.com/android/get-started/
25. FileDownloader - 文件下載庫(kù)
簡(jiǎn)介:
?多任務(wù),多線程(多連接),斷點(diǎn)續(xù)傳,高并發(fā),使用簡(jiǎn)單,單/非單進(jìn)程文件下載庫(kù)。
github地址:https://github.com/lingochamp/FileDownloader
使用說(shuō)明參考鏈接: https://github.com/lingochamp/FileDownloader/blob/master/README-zh.md
26. Calligraphy - 批量定義字體
簡(jiǎn)介:
?Android批量設(shè)置字體的庫(kù)。
github地址:https://github.com/chrisjenx/Calligraphy
使用說(shuō)明參考鏈接: https://blog.csdn.net/steveyg/article/details/53309842
27. AndroidAutoSize 多分辨率適配方案
簡(jiǎn)介:
?今日頭條屏幕適配方案終極版,一個(gè)極低成本的 Android 屏幕適配方案
github地址:https://github.com/JessYanCoding/AndroidAutoSize
使用說(shuō)明參考鏈接: https://github.com/JessYanCoding/AndroidAutoSize
28. glide-transformations - glide圖片轉(zhuǎn)換庫(kù)
簡(jiǎn)介:
? 一個(gè)Android轉(zhuǎn)換庫(kù),為Glide提供了各種圖像轉(zhuǎn)換。
github地址:https://github.com/wasabeef/glide-transformations
使用說(shuō)明參考鏈接: https://github.com/wasabeef/glide-transformations
29. HomeMirror
簡(jiǎn)介:
?Android 手機(jī)投屏到鏡子的工具。
github地址:https://github.com/HannahMitt/HomeMirror
30. easypermissions
簡(jiǎn)介:
?EasyPermissions是一個(gè)封裝庫(kù),用于簡(jiǎn)化針對(duì)Android M或更高版本的系統(tǒng)權(quán)限邏輯。
github地址:https://github.com/googlesamples/easypermissions
使用說(shuō)明參考鏈接: https://github.com/googlesamples/easypermissions
注解類(lèi)開(kāi)源庫(kù)
31. butterknife
? butter knife是出自JakeWharton的一個(gè)開(kāi)源庫(kù),它通過(guò)注解的方式來(lái)替代android中view的相關(guān)操作。減少大量的findViewById以及setOnClickListener代碼,且對(duì)性能的影響較小。
github地址:https://github.com/JakeWharton/butterknife
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/3678aafdabc7
32. androidannotations - android注解框架
簡(jiǎn)介:
?AndroidAnnotations是一個(gè)能夠讓你快速進(jìn)行Android開(kāi)發(fā)的開(kāi)源框架,它能讓你專(zhuān)注于真正重要的地方。
github地址:https://github.com/androidannotations/androidannotations
使用說(shuō)明參考鏈接: https://blog.csdn.net/zjbpku/article/details/18676149
異步操作、消息推動(dòng)、和即時(shí)通訊
33. EventBus-異步消息推送
簡(jiǎn)介:
? 由greenrobot [1] 組織貢獻(xiàn)(該組織還貢獻(xiàn)了greenDAO),一個(gè)Android事件發(fā)布/訂閱輕量級(jí)框架,
功能:通過(guò)解耦發(fā)布者和訂閱者簡(jiǎn)化Android事件傳遞 [2]
EventBus可以代替Android傳統(tǒng)的Intent,Handler,Broadcast或接口函數(shù),在Fragment,Activity,Service線程之間傳遞數(shù)據(jù),執(zhí)行方法。
github地址:https://github.com/greenrobot/EventBus
使用說(shuō)明參考鏈接:https://www.jianshu.com/p/e7d5c7bda783
34. RxAndroid-異步邏輯處理
簡(jiǎn)介:
?RxAndroid源于RxJava——"a library for composing asynchronous and event-based programs using observable sequences for the Java VM“,意為“一個(gè)在Java VM 上使用可觀測(cè)的序列來(lái)組成異步的、基于事件的程序的庫(kù)”。
?RxAndoid在我的粗略理解中,是一個(gè)實(shí)現(xiàn)異步操作的庫(kù),具有簡(jiǎn)潔的鏈?zhǔn)酱a,提供強(qiáng)大的數(shù)據(jù)變換。
github地址:https://github.com/ReactiveX/RxAndroid
使用說(shuō)明參考鏈接: https://blog.csdn.net/u013872857/article/details/80344997
35. Telegram-即時(shí)通訊
簡(jiǎn)介:
?Telegram是一款關(guān)注速度和安全性的即時(shí)通訊應(yīng)用。它超快,簡(jiǎn)單,免費(fèi)。這個(gè)github包含了Android Telegram應(yīng)用的官方源代碼。
github地址:https://github.com/DrKLO/Telegram
使用說(shuō)明參考鏈接: https://www.jianshu.com/p/4674dd5f0861
36. Signal-Android-即時(shí)通訊
簡(jiǎn)介:
?Signal是一款消息傳遞應(yīng)用程序,用于與朋友進(jìn)行簡(jiǎn)單的私人交流。
?Signal使用手機(jī)的數(shù)據(jù)連接(WiFi / 3G / 4G)進(jìn)行安全通信,可以選擇支持純SMS / MMS作為統(tǒng)一的Messenger,還可以加密手機(jī)上存儲(chǔ)的消息。
github地址:https://github.com/signalapp/Signal-Android
使用說(shuō)明參考鏈接: https://github.com/signalapp/Signal-Android
反編譯
37. jadx
簡(jiǎn)介:
? 開(kāi)源反編譯工具,可以發(fā)dex文件或者apk反編譯為java文件,支持命令行和gui。
github地址:https://github.com/skylot/jadx
使用說(shuō)明參考鏈接:https://blog.csdn.net/weixin_33929309/article/details/87958066
38. bytecode-viewer
簡(jiǎn)介:
?bytecode Viewer是一個(gè)先進(jìn)的輕量級(jí)Java字節(jié)碼查看器,它是一款基于圖形界面的Java反編譯器,Java字節(jié)碼編輯器,APK編輯器,Dex編輯器,APK反編譯器,DEX反編譯器,Procyon Java反編譯器,CFR Java反編譯器,以及FernFlower Java反編譯器。不僅如此,它還是一款Hex查看器,代碼搜索器和代碼調(diào)試器。除此之外,它還具備Smali和Baksmali等匯編器的相關(guān)功能。
github地址:https://github.com/Konloch/bytecode-viewer
使用說(shuō)明參考鏈接: https://github.com/Konloch/bytecode-viewer
39. Apktool
簡(jiǎn)介:
? 反編譯工具
github地址:https://github.com/iBotPeaches/Apktool
使用說(shuō)明參考鏈接: https://blog.csdn.net/ysc123shift/article/details/52985435
Json
40. fastjson
簡(jiǎn)介:
? fastjson是阿里巴巴的開(kāi)源JSON解析庫(kù),它可以解析JSON格式的字符串,支持將Java Bean序列化為JSON字符串,也可以從JSON字符串反序列化到JavaBean。
github地址:https://github.com/alibaba/fastjson
使用說(shuō)明參考鏈接:https://github.com/alibaba/fastjson/wiki/Quick-Start-CN
下拉刷新和滑動(dòng)類(lèi)開(kāi)源庫(kù)
41. SmartRefreshLayout - 滑動(dòng)刷新layout
簡(jiǎn)介:
? SmartRefreshLayout以打造一個(gè)強(qiáng)大,穩(wěn)定,成熟的下拉刷新框架為目標(biāo),并集成各種的炫酷、多樣、實(shí)用、美觀的Header和Footer。 正如名字所說(shuō),SmartRefreshLayout是一個(gè)“聰明”或者“智能”的下拉刷新布局,由于它的“智能”,它不只是支持所有的View,還支持多層嵌套的視圖結(jié)構(gòu)。 它繼承自ViewGroup 而不是FrameLayout或LinearLayout,提高了性能。 也吸取了現(xiàn)在流行的各種刷新布局的優(yōu)點(diǎn),包括谷歌官方的 SwipeRefreshLayout, 其他第三方的 Ultra-Pull-To-Refresh、TwinklingRefreshLayout 。 還集成了各種炫酷的 Header 和 Footer。
github地址:https://github.com/scwang90/SmartRefreshLayout
使用說(shuō)明參考鏈接: https://juejin.im/entry/595db2bc6fb9a06bc7495370
42. BaseRecyclerViewAdapterHelper - 多功能RecyclerViewAdapterHelper
簡(jiǎn)介:
?CymChad提供的RecyclerViewAdapter封面類(lèi)庫(kù),主要提供以下功能:
- 優(yōu)化Adapter代碼(減少百分之70%代碼)
- 添加點(diǎn)擊item點(diǎn)擊、長(zhǎng)按事件、以及item子控件的點(diǎn)擊事件
- 添加加載動(dòng)畫(huà)(一行代碼輕松切換5種默認(rèn)動(dòng)畫(huà))
- 添加頭部、尾部、下拉刷新、上拉加載(感覺(jué)又回到ListView時(shí)代)
- 設(shè)置自定義的加載更多布局
- 添加分組(隨心定義分組頭部)
- 自定義不同的item類(lèi)型(簡(jiǎn)單配置、無(wú)需重寫(xiě)額外方法)
- 設(shè)置空布局(比Listview的setEmptyView還要好用!)
- 添加拖拽item 。
github地址:https://github.com/CymChad/BaseRecyclerViewAdapterHelper
使用說(shuō)明參考鏈接: https://github.com/CymChad/BaseRecyclerViewAdapterHelper/blob/master/README-cn.md
43. android-Ultra-Pull-To-Refresh
簡(jiǎn)介:
?超級(jí)下拉上滑組件,支持包裹所有控件。
github地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh
使用說(shuō)明參考鏈接: https://blog.csdn.net/gaobaoshen1/article/details/52046326
44. Android-PullToRefresh
簡(jiǎn)介:
?下拉上拉刷新組件。
github地址:https://github.com/chrisbanes/Android-PullToRefresh
使用說(shuō)明參考鏈接: https://github.com/chrisbanes/Android-PullToRefresh/wiki/Quick-Start-Guide
已停止維護(hù)
自定義View
45. PhotoView
簡(jiǎn)介:
?PhotoView提供一個(gè)易于使用,支持長(zhǎng)按、多點(diǎn)觸摸,放縮等操作的ImageView。
github地址:https://github.com/chrisbanes/PhotoView
使用說(shuō)明參考鏈接:https://github.com/chrisbanes/PhotoView
46. CircleImageView(圓形ImageView)
簡(jiǎn)介:
?快速圓形的ImageView,非常適合個(gè)人資料圖像。 這基于Vince Mi的RoundedImageView,它本身基于Romain Guy推薦的技術(shù)。
github地址:https://github.com/hdodenhof/CircleImageView
使用說(shuō)明參考鏈接: https://github.com/hdodenhof/CircleImageView
47. SlidingMenu - 側(cè)滑菜單
簡(jiǎn)介:
?一個(gè)開(kāi)源的側(cè)滑菜單控件。
github地址:https://github.com/jfeinstein10/SlidingMenu
使用說(shuō)明參考鏈接: https://blog.csdn.net/lmj623565791/article/details/36677279
48. Android-PickerView - 多級(jí)選擇器控件
簡(jiǎn)介:
?Android-PickerView-類(lèi)ios的選擇器控件,支持時(shí)間選擇和省市縣三級(jí)聯(lián)動(dòng)選擇。
github地址:https://github.com/Bigkoo/Android-PickerView
使用說(shuō)明參考鏈接: https://github.com/Bigkoo/Android-PickerView
49. ViewPagerIndicator - ViewPager分頁(yè)指示器
簡(jiǎn)介:
?ViewPager的分頁(yè)指示器小組件。
github地址:https://github.com/JakeWharton/ViewPagerIndicator
使用說(shuō)明參考鏈接: https://github.com/JakeWharton/ViewPagerIndicator
50. android-gif-drawable - Gif自定義控件
簡(jiǎn)介:
? Gif文件展示ImageView控件。
github地址:https://github.com/koral–/android-gif-drawable
使用說(shuō)明參考鏈接: https://github.com/koral–/android-gif-drawable
51. Matisse - 圖片視頻選擇器
簡(jiǎn)介:
?圖片和視頻選擇器。
github地址:https://github.com/zhihu/Matisse
使用說(shuō)明參考鏈接: https://blog.csdn.net/qiaoshi96_bk/article/details/76164913
52. vlayout - LayoutManager擴(kuò)展庫(kù)
簡(jiǎn)介:
?VirtualLayout是阿里最近(2017.2)開(kāi)源的一個(gè)用來(lái)輔助RecyclerView的LayoutManager擴(kuò)展庫(kù),通過(guò)使用里面的LayoutHelper,我們可以輕松的使用一些比較復(fù)雜的布局,如:線性布局、Grid布局、固定布局、浮動(dòng)布局、欄格布局、通欄布局、一拖N布局、一拖N布局、瀑布流布局。還可以組合使用這些布局。天貓APP里面的一些商品布局就是用到這個(gè)庫(kù)。
github地址:https://github.com/alibaba/vlayout
使用說(shuō)明參考鏈接: https://blog.csdn.net/totond/article/details/70172775
53. AndroidSwipeLayout - 左右滑動(dòng)菜單
簡(jiǎn)介:
?AndroidSwipeLayout,顧名思義,Android平臺(tái)上的滑動(dòng)布局,是一個(gè)可以讓我們很方便使用滑動(dòng)的庫(kù),典型的應(yīng)用就是側(cè)滑刪除與側(cè)滑菜單。
github地址:https://github.com/daimajia/AndroidSwipeLayout
使用說(shuō)明參考鏈接: https://www.jianshu.com/p/58ed0a64e9b7
54. Android-ObservableScrollView - 滾動(dòng)view
簡(jiǎn)介:
?Android-ObservableScrollView,顧名思義,Android上觀察滾動(dòng)的視圖,可以監(jiān)聽(tīng)滾動(dòng)視圖的滾動(dòng)狀態(tài)。它可以很簡(jiǎn)單地與Toolbar進(jìn)行交互,并且很方便地創(chuàng)建Material Design的app。
github地址:https://github.com/ksoichiro/Android-ObservableScrollView
使用說(shuō)明參考鏈接: http://blog.qiji.tech/archives/8299
55. FlycoTabLayout - 各種樣式的tablayout
簡(jiǎn)介:
?一個(gè)Android TabLayout庫(kù),目前有3個(gè)TabLayout。
github地址:https://github.com/H07000223/FlycoTabLayout
使用說(shuō)明參考鏈接: https://github.com/H07000223/FlycoTabLayout
56. MaterialDesignLibrary - Material設(shè)計(jì)基礎(chǔ)組件庫(kù)
簡(jiǎn)介:
?實(shí)現(xiàn)了android L中的各種控件效果,包括浮動(dòng)操作按鈕Flat Button、checkbox、進(jìn)度條、開(kāi)關(guān)、slider(滑桿)、對(duì)話框、顏色選擇等,這完全是作者自己實(shí)現(xiàn)的控件,因此兼容2.2。
github地址:https://github.com/navasmdc/MaterialDesignLibrary
使用說(shuō)明參考鏈接: http://www.see-source.com/androidwidget/detail.html?wid=255
57. AVLoadingIndicatorView - 多種loading組件
簡(jiǎn)介:
?各種類(lèi)型loadingView庫(kù)。
github地址:https://github.com/81813780/AVLoadingIndicatorView
使用說(shuō)明參考鏈接: https://github.com/81813780/AVLoadingIndicatorView
項(xiàng)目已停止維護(hù)
58. banner - 輪播組件
簡(jiǎn)介:
?Android廣告圖片輪播控件,支持無(wú)限循環(huán)和多種主題,可以靈活設(shè)置輪播樣式、動(dòng)畫(huà)、輪播和切換時(shí)間、位置、圖片加載框架等。
github地址:https://github.com/youth5201314/banner
使用說(shuō)明參考鏈接: https://github.com/youth5201314/banner
59. AndroidSlidingUpPanel - 上滑托盤(pán)面板庫(kù)
簡(jiǎn)介:
? 一個(gè)上滑式托盤(pán)面板庫(kù)。
github地址:https://github.com/umano/AndroidSlidingUpPanel
使用說(shuō)明參考鏈接: https://blog.csdn.net/u013718120/article/details/51537732
60. BottomBar - 底部導(dǎo)航欄組件
簡(jiǎn)介:
? Material Design設(shè)計(jì)的底部導(dǎo)航欄自定義組件。
github地址:https://github.com/roughike/BottomBar
使用說(shuō)明參考鏈接: https://github.com/roughike/BottomBar
已停止更新
61. DanmakuFlameMaster - 烈焰彈幕庫(kù)
簡(jiǎn)介:
?Android開(kāi)源彈幕引擎·烈焰彈幕使 ;
?bilibili開(kāi)發(fā)的彈幕開(kāi)源庫(kù)。
github地址:https://github.com/bilibili/DanmakuFlameMaster
使用說(shuō)明參考鏈接: https://blog.csdn.net/benhuo931115/article/details/51056646
62. MaterialViewPager - Material設(shè)計(jì)的ViewPager
簡(jiǎn)介:
? Material設(shè)計(jì)使用簡(jiǎn)單的ViewPager庫(kù)。
github地址:https://github.com/florent37/MaterialViewPager
使用說(shuō)明參考鏈接: https://github.com/florent37/MaterialViewPager
63. material-components-android - material設(shè)計(jì)組件樣式庫(kù)
簡(jiǎn)介:
?適用于Android的模塊化和可自定義的Material Design UI組件樣式庫(kù)。
github地址:https://github.com/material-components/material-components-android
使用說(shuō)明參考鏈接: https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md
64. cheesesquare - 新組件展示庫(kù)
簡(jiǎn)介:
?新的Android設(shè)計(jì)庫(kù),演示了Collapsing Toolbar、FloatingActionButton、View anchoring、NavigationView、Snackbar等組件。
github地址:https://github.com/chrisbanes/cheesesquare
使用說(shuō)明參考鏈接: 看源碼
65. StatusBarUtil - 狀態(tài)欄樣式
簡(jiǎn)介:
? 多種狀態(tài)欄樣式庫(kù)。
github地址:https://github.com/laobie/StatusBarUtil
使用說(shuō)明參考鏈接: https://github.com/laobie/StatusBarUtil
游戲引擎
66. libgdx
簡(jiǎn)介:
?LIGBDX是基于OpenGL(ES)的跨平臺(tái)Java游戲開(kāi)發(fā)框架,它可在Windows、Linux、Mac OS X、Android、WebGL啟用的瀏覽器和IOS上運(yùn)行。
github地址:https://github.com/libgdx/libgdx
使用說(shuō)明參考鏈接: http://mobile.51cto.com/aengine-421277.htm
熱更新框架
67. tinker
簡(jiǎn)介:
?tinker是一款騰訊開(kāi)發(fā)的apk開(kāi)源熱更新框架,支持dex、庫(kù)、資源文件的熱更新。
github地址:https://github.com/Tencent/tinker
使用說(shuō)明參考鏈接: https://github.com/Tencent/tinker
播放器
68. ExoPlayer
簡(jiǎn)介:
?ExoPlayer是一個(gè)google開(kāi)發(fā)的Android應(yīng)用層媒體播放器,它提供了一套可替換Android MediaPlayer的API,可以播放本地或者是線上的音視頻資源。ExoPlayer支持一些Android MediaPlayer不支持的特性,比如適配DASH和SmoothStreaming 的播放。和MediaPlayer不同的是,ExoPlayer很容易自定義和擴(kuò)展,并且它可以通過(guò)應(yīng)用商店的應(yīng)用程序更新來(lái)直接更新。
github地址:https://github.com/google/ExoPlayer
使用說(shuō)明參考鏈接:
69. GSYVideoPlayer - 視頻播放器
簡(jiǎn)介:
?視頻播放器(IJKplayer、ExoPlayer、MediaPlayer),HTTPS,支持彈幕,支持濾鏡、水印、gif截圖,片頭廣告、中間廣告,多個(gè)同時(shí)播放,支持基本的拖動(dòng),聲音、亮度調(diào)節(jié),支持邊播邊緩存,支持視頻自帶rotation的旋轉(zhuǎn)(90,270之類(lèi)),重力旋轉(zhuǎn)與手動(dòng)旋轉(zhuǎn)的同步支持,支持列表播放 ,列表全屏動(dòng)畫(huà),視頻加載速度,列表小窗口支持拖動(dòng),動(dòng)畫(huà)效果,調(diào)整比例,多分辨率切換,支持切換播放器,進(jìn)度條小窗口預(yù)覽,列表切換詳情頁(yè)面無(wú)縫播放,rtsp、concat、mpeg。
github地址:https://github.com/CarGuo/GSYVideoPlayer
使用說(shuō)明參考鏈接: https://github.com/CarGuo/GSYVideoPlayer
70. JiaoZiVideoPlayer - 多功能媒體播放器
簡(jiǎn)介:
?高度自定義的開(kāi)源安卓視頻框架。
github地址:https://github.com/lipangit/JiaoZiVideoPlayer
使用說(shuō)明參考鏈接: https://juejin.im/post/5cb837f1518825329f6cf300
架構(gòu)
71. Android-CleanArchitecture
簡(jiǎn)介:
?這是google開(kāi)發(fā)的一個(gè)干凈架構(gòu)的簡(jiǎn)單實(shí)例代碼。
github地址:https://github.com/android10/Android-CleanArchitecture
使用說(shuō)明參考鏈接:https://blog.csdn.net/wbwjx/article/details/52724445
72. ARoute
簡(jiǎn)介:
?ARouter 是阿里開(kāi)源的,可以看成是 Android 平臺(tái)中對(duì)頁(yè)面、服務(wù)提供路由功能的中間件。
?ARouter 直接翻譯過(guò)來(lái)就是路由,可以用來(lái)映射頁(yè)面關(guān)系,實(shí)現(xiàn)跳轉(zhuǎn)相關(guān)的功能。在 Android 中,常被用來(lái)進(jìn)行組件化通訊。
github地址:https://github.com/alibaba/ARouter
使用說(shuō)明參考鏈接: https://www.jianshu.com/p/a57dd8c8f10e
73. MVPArms
簡(jiǎn)介:
?一個(gè)整合了大量主流開(kāi)源項(xiàng)目高度可配置化的 Android MVP 快速集成框架。
github地址:https://github.com/JessYanCoding/MVPArms
使用說(shuō)明參考鏈接: https://github.com/JessYanCoding/MVPArms/wiki
數(shù)據(jù)庫(kù)
74. greenDAO - 數(shù)據(jù)庫(kù)方案
簡(jiǎn)介:
?greenDAO 是一款開(kāi)源的面向 Android 的輕便、快捷的 ORM 框架,將 Java 對(duì)象映射到 SQLite 數(shù)據(jù)庫(kù)中,我們操作數(shù)據(jù)庫(kù)的時(shí)候,不在需要編寫(xiě)復(fù)雜的 SQL語(yǔ)句, 在性能方面,greenDAO 針對(duì) Android 進(jìn)行了高度優(yōu)化, 最小的內(nèi)存開(kāi)銷(xiāo) 、依賴體積小 同時(shí)還是支持?jǐn)?shù)據(jù)庫(kù)加密。
github地址:https://github.com/greenrobot/greenDAO
使用說(shuō)明參考鏈接: https://juejin.im/post/5959b5bcf265da6c4d1bb245
75. realm-java - 數(shù)據(jù)庫(kù)方案
簡(jiǎn)介:
?Realm 是一個(gè)手機(jī)數(shù)據(jù)庫(kù),是用來(lái)替代 SQlite 的解決方案,比 SQlite 更輕量級(jí),速度更快,因?yàn)樗幸惶鬃约旱臄?shù)據(jù)庫(kù)搜索引擎,并且還具有很多現(xiàn)代數(shù)據(jù)庫(kù)的優(yōu)點(diǎn),支持 JSON,流式 API 調(diào)用,數(shù)據(jù)變更通知,自動(dòng)數(shù)據(jù)同步,簡(jiǎn)單身份驗(yàn)證,訪問(wèn)控制,事件處理,最重要的是跨平臺(tái),目前已經(jīng)支持 Java、Swift、Object - C、React - Native 等多種實(shí)現(xiàn),今天我們就來(lái)簡(jiǎn)單的入門(mén) Ream 數(shù)據(jù)庫(kù)的使用。
github地址:https://github.com/realm/realm-java
使用說(shuō)明參考鏈接: https://blog.csdn.net/qq_26420489/article/details/80354088
WebView
76. VasSonic - WebView加速
簡(jiǎn)介:
?VasSonic是由騰訊VAS團(tuán)隊(duì)開(kāi)發(fā)的輕量級(jí)高性能混合框架,旨在加快在Android和iOS平臺(tái)上工作的網(wǎng)站的首屏顯示。
github地址:https://github.com/Tencent/VasSonic
使用說(shuō)明參考鏈接: https://github.com/Tencent/VasSonic/blob/master/sonic-android/README.md
App
77. PocketHub - Github android app源碼
簡(jiǎn)介:
?Github Android版app。
github地址:https://github.com/pockethub/PocketHub
使用說(shuō)明參考鏈接: https://github.com/pockethub/PocketHub
Android 學(xué)習(xí)資料
78. Android_Data
簡(jiǎn)介:
? Android學(xué)習(xí)資料庫(kù)。
github地址:https://github.com/Freelander/Android_Data
手機(jī)插件框架及手機(jī)虛擬機(jī)
79. VirtualXposed - android手機(jī)的app虛擬環(huán)境
簡(jiǎn)介:
?一個(gè)簡(jiǎn)單的應(yīng)用程序,無(wú)需root用戶即可使用Xposed,解鎖bootloader或修改system image等。
github地址:https://github.com/android-hacker/VirtualXposed
使用說(shuō)明參考鏈接: https://github.com/android-hacker/VirtualXposed/blob/vxp/CHINESE.md
80. VirtualAPK - android插件框架
簡(jiǎn)介:
?VirtualAPK是滴滴出行自研的一款優(yōu)秀的插件化框架
github地址:https://github.com/didi/VirtualAPK
使用說(shuō)明參考鏈接: https://github.com/didi/VirtualAPK/wiki
總結(jié)
以上是生活随笔為你收集整理的Android优秀开源框架集的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 一套很漂亮的配色方案
- 下一篇: 清华同方服务器做系统,清华同方云服务器底