一明场、快速開發(fā)框架
-
XSnow
基于RxJava2+Retrofit2精心打造的Android基礎(chǔ)框架仗岖,包含網(wǎng)絡(luò)酣难、上傳诅炉、下載、緩存赂乐、事件總線薯鳍、權(quán)限管理、數(shù)據(jù)庫(kù)挨措、圖片加載挖滤,基本都是項(xiàng)目中必用功能,每個(gè)模塊充分解耦浅役,可自由拓展
2.MVPArms
一個(gè)整合了大量主流開源項(xiàng)目高度可配置化的 Android MVP 快速集成框架(包括Mvp斩松、 Dagger2、RxJava觉既、RxAndroid惧盹、Rxlifecycle、RxCache瞪讼、RxPermissions钧椰、RxErroHandler、Retrofit符欠、Okhttp嫡霞、AndroidAutoSize、Gson希柿、Butterknife诊沪、AndroidEventBus、Timber曾撤、Glide端姚、LeakCanary)
3.Android-ZBLibrary
Android MVP快速開發(fā)框架,做國(guó)內(nèi) 「Demo最全面」「注釋最詳細(xì)」「使用最簡(jiǎn)單」「代碼最嚴(yán)謹(jǐn)」的Android開源UI框架
(包括OKHttp挤悉、UIL圖片加載寄锐、ZXing二維碼、沉浸狀態(tài)欄尖啡、下載安裝、自動(dòng)緩存以及各種Base剩膘、Demo衅斩、UI、Util)
4.MVVMHabit
MVVMHabit是以谷歌DataBinding+LiveData+ViewModel框架為基礎(chǔ)怠褐,整合Okhttp+RxJava+Retrofit+Glide等流行模塊畏梆,加上各種原生控件自定義的BindingAdapter,讓事件與數(shù)據(jù)源完美綁定的一款容易上癮的實(shí)用性MVVM快速開發(fā)框架。
5.AndroidFire
AndroidFire奠涌,一款新聞閱讀 App框架宪巨,基于 Material Design + MVP + RxJava + Retrofit + Glide,基本涵蓋了當(dāng)前 Android 端開發(fā)最常用的主流框架溜畅,基于此框架可以快速開發(fā)一個(gè)app捏卓。
二、網(wǎng)絡(luò)相關(guān)
1.okhttp
功能強(qiáng)大的網(wǎng)絡(luò)請(qǐng)求框架
2.retrofit
基于OKhttp的網(wǎng)絡(luò)請(qǐng)求框架慈格,配合Rxjava使用怠晴,邏輯非常簡(jiǎn)潔
3.okhttp-OkGo
該庫(kù)是基于 Http 協(xié)議,封裝了 OkHttp 的網(wǎng)絡(luò)請(qǐng)求框架浴捆,比 Retrofit 更簡(jiǎn)單易用蒜田,支持 RxJava,RxJava2选泻,支持自定義緩存冲粤,支持批量斷點(diǎn)下載管理和批量上傳管理功能
4.retrofit + rxjava案例RxJavaSamples
5.rxjava生命周期管理RxLifecycle
6.運(yùn)行時(shí)權(quán)限申請(qǐng) RxPermissions
三、注解與事件總線
1.注解框架butterknife
編譯時(shí)注解框架页眯,提供view和點(diǎn)擊事件的綁定
2.注解框架 dagger
不僅可以view綁定梯捕,還可以提供對(duì)象綁定
3.事件總線EventBus
Event bus for Android and Java that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality
4.事件總線 RxBus
用rxjava實(shí)現(xiàn)的eventbus
5.butterknife插件android-butterknife-zelezny
Android Studio plug-in for generating ButterKnife injections from selected layout XML.(一鍵生成view的綁定代碼)
四、控件相關(guān)
1.下拉刷新控件 SmartRefreshLayout
正如名字所說餐茵,SmartRefreshLayout是一個(gè)“聰明”或者“智能”的下拉刷新布局科阎,由于它的“智能”,它不只是支持所有的View忿族,還支持多層嵌套的視圖結(jié)構(gòu)锣笨。 它繼承自ViewGroup 而不是FrameLayout或LinearLayout,提高了性能道批。 也吸取了現(xiàn)在流行的各種刷新布局的優(yōu)點(diǎn)错英,包括谷歌官方的 SwipeRefreshLayout, 其他第三方的 Ultra-Pull-To-Refresh隆豹、TwinklingRefreshLayout 椭岩。 還集成了各種炫酷的 Header 和 Footer
2.下拉刷新TwinklingRefreshLayout
支持下拉刷新和上拉加載的RefreshLayout,自帶越界回彈效果,支持RecyclerView,AbsListView,ScrollView,WebView
3.適配器BaseRecyclerViewAdapterHelper
優(yōu)化Adapter代碼(減少百分之70%代碼)
添加點(diǎn)擊item點(diǎn)擊璃赡、長(zhǎng)按事件判哥、以及item子控件的點(diǎn)擊事件
添加加載動(dòng)畫(一行代碼輕松切換5種默認(rèn)動(dòng)畫)
添加頭部、尾部碉考、下拉刷新塌计、上拉加載(感覺又回到ListView時(shí)代)
設(shè)置自定義的加載更多布局
添加分組(隨心定義分組頭部)
自定義不同的item類型(簡(jiǎn)單配置、無需重寫額外方法)
設(shè)置空布局(比Listview的setEmptyView還要好用:钏)
添加拖拽item
4.圖片選擇器(包括圖片锌仅、視頻章钾、音頻的選取和預(yù)覽)PictureSelector
一款針對(duì)android平臺(tái)下的圖片選擇器,支持從相冊(cè)或拍照選擇圖片或視頻热芹、音頻贱傀,支持動(dòng)態(tài)權(quán)限獲取、裁剪(單圖or多圖裁剪)伊脓、壓縮府寒、主題自定義配置等功能、適配android 6.0+系統(tǒng)的開源圖片選擇框架丽旅。
5.基于WebView的帶進(jìn)度條的webview控件AgentWeb
AgentWeb 是一個(gè)基于的 Android WebView 椰棘,極度容易使用以及功能強(qiáng)大的庫(kù),提供了 Android WebView 一系列的問題解決方案 榄笙,并且輕量和極度靈活
6.圖片加載框架 glide
一個(gè)強(qiáng)大的圖片加載和緩存庫(kù)
7.圖片壓縮Luban
可能是最接近微信朋友圈的圖片壓縮算法
8.圓角圖片控件CircleImageView
9.騰訊出品的webview控件 VasSonic
VasSonic是一個(gè)輕量級(jí)和高性能混合框架由騰訊脈管的團(tuán)隊(duì),這是為了加快網(wǎng)站的第一個(gè)屏幕Android和iOS平臺(tái)上工作
10.圖片縮放控件 PhotoView
不需要寫任何代碼就可以實(shí)現(xiàn)圖片手勢(shì)縮放邪狞,旋轉(zhuǎn)
11.簡(jiǎn)潔好看的對(duì)話框sweet-alert-dialog
12.vlayout
VirtualLayout是一個(gè)針對(duì)RecyclerView的LayoutManager擴(kuò)展, 主要提供一整套布局方案和布局間的組件復(fù)用的問題
13.QMUI_Android
QMUI Android 的設(shè)計(jì)目的是用于輔助快速搭建一個(gè)具備基本設(shè)計(jì)還原效果的 Android 項(xiàng)目,同時(shí)利用自身提供的豐富控件及兼容處理茅撞,讓開發(fā)者能專注于業(yè)務(wù)需求而無需耗費(fèi)精力在基礎(chǔ)代碼的設(shè)計(jì)上帆卓。不管是新項(xiàng)目的創(chuàng)建,或是已有項(xiàng)目的維護(hù)米丘,均可使開發(fā)效率和項(xiàng)目質(zhì)量得到大幅度提升
14.配合glide改變圖片顯示形狀的庫(kù)glide-transformations
15.視頻播放器 GSYVideoPlayer
視頻播放器(IJKplayer剑令、ExoPlayer、MediaPlayer)拄查,HTTPS吁津,支持彈幕,支持濾鏡堕扶、水印碍脏、gif截圖,片頭廣告稍算、中間廣告典尾,多個(gè)同時(shí)播放,支持基本的拖動(dòng)糊探,聲音钾埂、亮度調(diào)節(jié),支持邊播邊緩存科平,支持視頻自帶rotation的旋轉(zhuǎn)(90,270之類)褥紫,重力旋轉(zhuǎn)與手動(dòng)旋轉(zhuǎn)的同步支持,支持列表播放 瞪慧,列表全屏動(dòng)畫髓考,視頻加載速度,列表小窗口支持拖動(dòng)汞贸,動(dòng)畫效果绳军,調(diào)整比例,多分辨率切換矢腻,支持切換播放器门驾,進(jìn)度條小窗口預(yù)覽,列表切換詳情頁面無縫播放多柑,rtsp奶是、concat、mpeg
16.加載動(dòng)畫 Android-SpinKit
17.閃爍加載視圖 ShimmerRecyclerView
在加載時(shí)顯示閃爍圖層竣灌,加載完成時(shí)顯示數(shù)據(jù)
18.日歷控件 CalendarView
Android上一個(gè)優(yōu)雅聂沙、萬能自定義UI、支持周視圖初嘹、自定義周起始及汉、性能高效的日歷控件,支持熱插拔實(shí)現(xiàn)的UI定制屯烦!支持標(biāo)記坷随、自定義顏色、農(nóng)歷驻龟、自定義月視圖各種顯示模式等温眉。Canvas繪制,速度快翁狐、占用內(nèi)存低类溢,你真的想不到日歷居然還可以如此優(yōu)雅!An elegant, highly customized and high-performance Calendar Widget on Android.
19.圖表控件MPAndroidChart
20.圖片輪播控件 MZBannerView
仿魅族BannerView,圖片輪播控件,支持多種模式切換:普通ViewPager使用露懒,普通Banner使用闯冷,仿魅族Banner使用
21.好看的圖片和視頻選擇器Matisse
知乎開源的圖片選擇器,簡(jiǎn)潔大方
22.自定義layoutmanage LayoutManagerGroup
自定義LayoutManager
23.時(shí)間隐锭、地區(qū)窃躲、三級(jí)聯(lián)動(dòng)選擇器 Android-PickerView
24.選項(xiàng)選擇器 AndroidPicker
25.通用彈框 XPopup
可以替代Dialog,PopupWindow钦睡,PopupMenu蒂窒,BottomSheet,DrawerLayout荞怒,Spinner等組件洒琢,自帶十幾種效果良好的動(dòng)畫, 支持完全的UI和動(dòng)畫自定義褐桌!
26.PinnedSectionItemDecoration
大粘性標(biāo)簽支持垂直方向的線性衰抑、網(wǎng)格、瀑布流布局管理器
小粘性標(biāo)簽支持垂直方向的線性和網(wǎng)格一行只有一列網(wǎng)格布局管理器
支持標(biāo)簽的單擊荧嵌、雙擊和長(zhǎng)按事件
支持標(biāo)簽內(nèi)部子控件的單擊呛踊、雙擊和長(zhǎng)按事件
可以繪制線性砾淌、網(wǎng)格、瀑布流布局的分隔線谭网,支持自定義分割線樣式(PS:垂直瀑布流布局需要Item高度固定汪厨,不能隨機(jī)變化導(dǎo)致Item位置切換
27.SuperTextView
為 View 設(shè)置圓角
支持單獨(dú)控制每一個(gè)圓角
為 View 添加邊框
為文字增加描邊或空心效果
支持最多 2 個(gè) Drawable 展示
可準(zhǔn)確控制 Drawable 大小及位置
支持漸變色背景
觸摸變色
展示圖片,包括網(wǎng)絡(luò)圖片
為圖片設(shè)置圓角
為圖片增加邊框
可插入操作的 Adjuster 模塊
修改 Drawable 的顏色
修改 Drawable 的旋轉(zhuǎn)角度
支持文字漸變色效果
支持為 Drawable 區(qū)域單獨(dú)設(shè)置點(diǎn)擊事件
支持 Gif 圖展示
支持為 Gif 圖添加邊框愉择,以及圓角
支持 Gif 圖暫停/播放劫乱、修改幀率
支持提取指定 **Gif 幀
五、系統(tǒng)相關(guān)
1.日志框架logger
Simple, pretty and powerful logger for android
2.內(nèi)存溢出檢測(cè)leakcanary
用于監(jiān)測(cè)App內(nèi)存泄漏
- 性能監(jiān)控AndroidPerformanceMonitor
BlockCanary是一個(gè)Android平臺(tái)的一個(gè)非侵入式的性能監(jiān)控組件锥涕,應(yīng)用只需要實(shí)現(xiàn)一個(gè)抽象類衷戈,提供一些該組件需要的上下文環(huán)境,就可以在平時(shí)使用應(yīng)用的時(shí)候檢測(cè)主線程上的各種卡慢問題层坠,并通過組件提供的各種信息分析出原因并進(jìn)行修復(fù)
4.狀態(tài)欄管理 StatusBarCompat
5.插件框架 Shadow
復(fù)用獨(dú)立安裝App的源碼:插件App的源碼原本就是可以正常安裝運(yùn)行的殖妇。
零反射無Hack實(shí)現(xiàn)插件技術(shù):從理論上就已經(jīng)確定無需對(duì)任何系統(tǒng)做兼容開發(fā),更無任何隱藏API調(diào)用窿春,和Google限制非公開SDK接口訪問的策略完全不沖突拉一。
全動(dòng)態(tài)插件框架:一次性實(shí)現(xiàn)完美的插件框架很難,但Shadow將這些實(shí)現(xiàn)全部動(dòng)態(tài)化起來旧乞,使插件框架的代碼成為了插件的一部分蔚润。插件的迭代不再受宿主打包了舊版本插件框架所限制。
宿主增量極谐咂堋:得益于全動(dòng)態(tài)實(shí)現(xiàn)嫡纠,真正合入宿主程序的代碼量極小(15KB延赌,160方法數(shù)左右)除盏。
Kotlin實(shí)現(xiàn):core.loader,core.transform核心代碼完全用Kotlin實(shí)現(xiàn)挫以,代碼簡(jiǎn)潔易維護(hù)
6.今日頭條屏幕適配方案 AndroidAutoSize
今日頭條屏幕適配方案終極版者蠕,一個(gè)極低成本的 Android 屏幕適配方案
7.熱修復(fù)框架 tinker
Tinker is a hot-fix solution library for Android, it supports dex, library and resources update without reinstall apk
8.組件化路由框架 ARouter
幫助 Android App 進(jìn)行組件化改造的路由框架
9.權(quán)限管理 AndPermission
動(dòng)態(tài)權(quán)限申請(qǐng)
六、其他
1.android 學(xué)習(xí)筆記 AndroidNote
2.常用工具類 AndroidUtilCode
3.常用工具# RxTool
Android開發(fā)人員不得不收集的工具類集合 | 支付寶支付 | 微信支付(統(tǒng)一下單) | 微信分享 | Zip4j壓縮(支持分卷壓縮與加密) | 一鍵集成UCrop選擇圓形頭像 | 一鍵集成二維碼和條形碼的掃描與生成 | 常用Dialog | WebView的封裝可播放視頻 | 仿斗魚滑動(dòng)驗(yàn)證碼 | Toast封裝 | 震動(dòng) | GPS | Location定位 | 圖片縮放 | Exif 圖片添加地理位置信息(經(jīng)緯度) | 蛛網(wǎng)等級(jí) | 顏色選擇器 | ArcGis | VTPK | 編譯運(yùn)行一下說不定會(huì)找到驚喜