Android框架備忘

緩存

DiskLruCacheJava實(shí)現(xiàn)基于LRU的磁盤緩存

2.圖片加載

Android Universal Image Loader一個(gè)強(qiáng)大的加載,緩存,展示圖片的庫

Picasso一個(gè)強(qiáng)大的圖片下載與緩存的庫

Fresco一個(gè)用于管理圖像和他們使用的內(nèi)存的庫

Glide一個(gè)圖片加載和緩存的庫

3. 圖片處理

Picasso-transformations一個(gè)為Picasso提供多種圖片變換的庫

Glide-transformations一個(gè)為Glide提供多種圖片變換的庫

Android-gpuimage基于OpenGL的Android過濾器

4. 網(wǎng)絡(luò)請(qǐng)求

Android Async HTTPAndroid異步HTTP庫

AndroidAsync異步Socket,HTTP(客戶端+服務(wù)器),WebSocket,和socket.io庫。基于NIO而不是線程。

OkHttp一個(gè)Http與Http/2的客戶端

Retrofit類型安全的Http客戶端

VolleyGoogle推出的Android異步網(wǎng)絡(luò)請(qǐng)求框架和圖片加載框架

5. 網(wǎng)絡(luò)解析

Gson一個(gè)Java序列化/反序列化庫,可以將JSON和java對(duì)象互相轉(zhuǎn)換

JacksonJackson可以輕松地將Java對(duì)象轉(zhuǎn)換成json對(duì)象和xml文檔,同樣也可以將json、xml轉(zhuǎn)換成Java對(duì)象

FastjsonJava上一個(gè)快速的JSON解析器/生成器

HtmlPaser一種用來解析單個(gè)獨(dú)立html或嵌套html的方式

Jsoup一個(gè)以最好的DOM,CSS和jQuery解析html的庫

6. 數(shù)據(jù)庫

OrmLiteJDBC和Android的輕量級(jí)ORM java包

Sugar用超級(jí)簡單的方法處理Android數(shù)據(jù)庫

GreenDAO一種輕快地將對(duì)象映射到SQLite數(shù)據(jù)庫的ORM解決方案

ActiveAndroid以活動(dòng)記錄方式為Android SQLite提供持久化

SQLBriteSQLiteOpenHelper 和ContentResolver的輕量級(jí)包裝

Realm移動(dòng)數(shù)據(jù)庫:一個(gè)SQLite和ORM的替換品

7. 依賴注入

ButterKnife將Android視圖和回調(diào)方法綁定到字段和方法上

Dagger2一個(gè)Android和java快速依賴注射器。

AndroidAnotations快速安卓開發(fā)。易于維護(hù)

RoboGuiceAndroid平臺(tái)的Google Guice

8. 圖表

WilliamChart創(chuàng)建圖表的Android庫

HelloCharts兼容到API8的Android圖表庫

MPAndroidChart一個(gè)強(qiáng)大的Android圖表視圖/圖形庫

9. 后臺(tái)處理

Tape一個(gè)輕快的,事務(wù)性的,基于文件的FIFO的庫

Android Priority Job Queue一個(gè)專門為Android輕松調(diào)度任務(wù)的工作隊(duì)列

10. 事件總線

EventBus安卓優(yōu)化的事件總線,簡化了活動(dòng)、片段、線程、服務(wù)等的通信

Otto一個(gè)基于Guava的增強(qiáng)的事件總線

11. 響應(yīng)式編程

RxJavaJVM上的響應(yīng)式擴(kuò)展

RxJavaJoins為RxJava提供Joins操作

RxAndroidAndroid上的響應(yīng)式擴(kuò)展,在RxJava基礎(chǔ)上添加了Android線程調(diào)度

RxBinding提供用RxJava綁定Android UI的API

AgeraAndroid上的響應(yīng)式編程

12. Log框架

Logger簡單,漂亮,強(qiáng)大的Android日志工具

Hugo在調(diào)試版本上注解的觸發(fā)方法進(jìn)行日志記錄

Timber一個(gè)小的,可擴(kuò)展的日志工具

13. 測(cè)試框架

MockitoJava編寫的Mocking單元測(cè)試框架

RobotiumAndroid UI 測(cè)試

RobolectricAndroid單元測(cè)試框架

Android自帶很多測(cè)試工具:JUnit,Monkeyrunner,UiAutomator,Espresso等

14.調(diào)試框架

Stetho調(diào)試Android應(yīng)用的橋梁,使得可以利用Chrome開發(fā)者工具進(jìn)行調(diào)試

性能優(yōu)化

LeakCanary內(nèi)存泄漏檢測(cè)工具

ACRAAndroid應(yīng)用程序崩潰報(bào)告

xUtils框架

主要有四大模塊:

數(shù)據(jù)庫模塊:android中的orm框架,一行代碼就可以進(jìn)行增刪改查;

支持事務(wù),默認(rèn)關(guān)閉;

可通過注解自定義表名,列名,外鍵,唯一性約束,NOT NULL約束,CHECK約束等(需要混淆的時(shí)候請(qǐng)注解表名和列名);

支持綁定外鍵,保存實(shí)體時(shí)外鍵關(guān)聯(lián)實(shí)體自動(dòng)保存或更新;

自動(dòng)加載外鍵關(guān)聯(lián)實(shí)體,支持延時(shí)加載;

支持鏈?zhǔn)奖磉_(dá)查詢,更直觀的查詢語義,參考下面的介紹或sample中的例子。

注解模塊:android中的ioc框架,完全注解方式就可以進(jìn)行UI,資源和事件綁定;

新的事件綁定方式,使用混淆工具混淆后仍可正常工作;

目前支持常用的20種事件綁定,參見ViewCommonEventListener類和包c(diǎn)om.lidroid.xutils.view.annotation.event。

網(wǎng)絡(luò)模塊:支持同步,異步方式的請(qǐng)求;

支持大文件上傳,上傳大文件不會(huì)oom;

支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT請(qǐng)求;

下載支持301/302重定向,支持設(shè)置是否根據(jù)Content-Disposition重命名下載的文件;

返回文本內(nèi)容的請(qǐng)求(默認(rèn)只啟用了GET請(qǐng)求)支持緩存,可設(shè)置默認(rèn)過期時(shí)間和針對(duì)當(dāng)前請(qǐng)求的過期時(shí)間。

圖片緩存模塊:加載bitmap的時(shí)候無需考慮bitmap加載過程中出現(xiàn)的oom和android容器快速滑動(dòng)時(shí)候出現(xiàn)的圖片錯(cuò)位等現(xiàn)象;

支持加載網(wǎng)絡(luò)圖片和本地圖片;

內(nèi)存管理使用lru算法,更好的管理bitmap內(nèi)存;

可配置線程加載線程數(shù)量,緩存大小,緩存路徑,加載顯示動(dòng)畫等...

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容