個(gè)人站點(diǎn): http://litesuits.com
創(chuàng)新互聯(lián)憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專業(yè)的網(wǎng)站策劃、成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、網(wǎng)站優(yōu)化、軟件開發(fā)、網(wǎng)站改版等服務(wù),在成都十多年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都上千余家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
QQ群: 大群 47357508 , 二群 42960650
為什么可以選用lite-http?
lite-http 初步使用 和 快速起步上手
本系列文章面向android開發(fā)者,展示開源網(wǎng)絡(luò)通信框架LiteHttp的主要用法,并講解其關(guān)鍵功能的運(yùn)作原理,同時(shí)傳達(dá)了一些框架作者在日常開發(fā)中的一些最佳實(shí)踐和經(jīng)驗(yàn)。
LiteHttp是一款簡(jiǎn)單、智能、靈活的HTTP框架庫,它在請(qǐng)求和響應(yīng)層面做到了全自動(dòng)構(gòu)建和解析,主要用于Android快速開發(fā)。
簡(jiǎn)單、強(qiáng)大,線程無關(guān),一行代碼搞定API請(qǐng)求和數(shù)據(jù)轉(zhuǎn)化:
User user = liteHttp.get(url, User.class);1
當(dāng)然也可以開啟線程異步下載文件:
liteHttp.executeAsync(new FileRequest(url,path).setHttpListener( new HttpListener(true, true, true) { @Override public void onLoading(AbstractRequest request, long total, long len) { // 進(jìn)度通知 } }) );12345678910
通過注解約定完成異步請(qǐng)求:
@HttpUri(loginUrl) class LoginParam extends HttpRichParamModel{ private String name; private String password; public LoginParam(String name, String password) { this.name = name; this.password = password; } } liteHttp.executeAsync(new LoginParam("lucy", "123456"));1234567891011
將構(gòu)建類似下面請(qǐng)求:http://xxx?name=lucy&password=123456
案例詳情可見我另一篇lite-http引言文章:LiteHttp 引言:開發(fā)者為什么要選LiteHttp??
輕量級(jí):微小的內(nèi)存開銷與Jar包體積,99K左右。
單線程:請(qǐng)求本身具有線程無關(guān)特性,基于當(dāng)前線程高效率運(yùn)作。
全支持:GET, POST, PUT, DELETE, HEAD, TRACE, OPTIONS, PATCH。
全自動(dòng):一行代碼自動(dòng)完成Model與Parameter、Json與Model。
可配置:更多更靈活的配置選擇項(xiàng),多達(dá) 23+ 項(xiàng)。
多態(tài)化:更加直觀的API,輸入和輸出更加明確。
強(qiáng)并發(fā):自帶強(qiáng)大的并發(fā)調(diào)度器,有效控制任務(wù)調(diào)度與隊(duì)列控制策略。
注解化:通過注解約定參數(shù),URL、Method、ID、TAG等都可約定。
易拓展:自定義DataParser將網(wǎng)絡(luò)數(shù)據(jù)流轉(zhuǎn)化為你想要的數(shù)據(jù)類型。
可替換:基于接口,輕松替換網(wǎng)絡(luò)連接實(shí)現(xiàn)方式和Json序列化庫。
多層緩存:內(nèi)存命中更高效!多種緩存模式,支持設(shè)置緩存有效期。
回調(diào)靈活:可選擇當(dāng)前或UI線程執(zhí)行回調(diào),開始結(jié)束、成敗、上傳、下載進(jìn)度等都可監(jiān)聽。
文件上傳:支持單個(gè)、多個(gè)大文件上傳。
文件下載:支持文件、Bimtap下載及其進(jìn)度通知。
網(wǎng)絡(luò)禁用:快速禁用一種、多種網(wǎng)絡(luò)環(huán)境,比如指定禁用 2G,3G 。
數(shù)據(jù)統(tǒng)計(jì):鏈接、讀取時(shí)長(zhǎng)統(tǒng)計(jì),以及流量統(tǒng)計(jì)。
異常體系:統(tǒng)一、簡(jiǎn)明、清晰地拋出三類異常:客戶端、網(wǎng)絡(luò)、服務(wù)器,且異常都可精確細(xì)分。
GZIP壓縮:Request, Response 自動(dòng) GZIP 壓縮節(jié)省流量。
自動(dòng)重試:結(jié)合探測(cè)異常類型和當(dāng)前網(wǎng)絡(luò)狀況,智能執(zhí)行重試策略。
自動(dòng)重定向:基于 30X 狀態(tài)的重試,且可設(shè)置最大次數(shù)防止過度跳轉(zhuǎn)。
關(guān)于App架構(gòu),請(qǐng)看我另一篇文章分享:
怎樣搭高質(zhì)量的Android項(xiàng)目框架,框架的結(jié)構(gòu)具體描述?
好的 ,下面直接給你看,療效好記得聯(lián)系我,呵呵噠:
1. 初始化和初步使用
2. 簡(jiǎn)化請(qǐng)求和非安全方法的使用
3. 自動(dòng)對(duì)象轉(zhuǎn)化
4. 自定義DataParser和Json序列化庫的替換
5. 文件、位圖的上傳和下載
6. 禁用網(wǎng)絡(luò)和流量、時(shí)間統(tǒng)計(jì)
7. 重試和重定向
8. 處理異常和取消請(qǐng)求
9. POST方式的多種類型數(shù)據(jù)傳輸
10. lite-http異步并發(fā)與調(diào)度策略
11. 全局配置與參數(shù)設(shè)置詳解
12. 通過注解完成API請(qǐng)求
13. 多層緩存機(jī)制及用法
14. 回調(diào)監(jiān)聽器詳解
15. 并發(fā)調(diào)度控制器詳解
版權(quán)聲明:本文為博主原創(chuàng)文章,若轉(zhuǎn)載希望您勿刪減,并保留出處。