對接安卓端或者非同步傳輸的封裝工具類

2021-08-22 11:59:35 字數 2300 閱讀 6576

public final class asyncresponsedata

public static final resultdata get404response(string errmsg)

public static final resultdata get404response(maperrmsgs)

public static final resultdata get401response(string errmsg)

public static final resultdata get500response(string errmsg)

public static final resultdata get200response()

public static class resultdata

private resultdata(int code, string message)

private resultdata(int code, mapmessages)

private int status;

private mapdata;

private mapmessages;

@jsonignore

/*** 判斷當前訊息是否為正常狀態(200)

*/public boolean isok()

public int getstatus()

/*** 返回 簡單資料型別,通過putdata(object data)放入的資料

* * @return

*/@jsoninclude(jsoninclude.include.non_empty)

public object getdata()

if (data.containskey(one_data_key)) else

return data;}}

/*** 當需要重向時,返回重定向請求的 url 全路徑(包含http部分)

* * @return

*/@jsoninclude(jsoninclude.include.non_null)

public object getredirect()

/*** 簡單資料型別

* * @param data

*/public void setdata(object data)

this.data.put(one_data_key, data);

}public void setstatus(int status)

public void setmessages(mapmessages)

public resultdata as404()

public resultdata as401()

public resultdata as500()

public resultdata as404(string msg)

public resultdata as401(string msg)

public resultdata as500(string msg)

private resultdata switchstatus(int status)

if (response_status_ok != this.status)

this.status = status;

return this;

}private resultdata putonemessage(string msg)

if (!this.messages.containskey(one_msg_key))

return this;

}@jsoninclude(jsoninclude.include.non_null)

public object getmessage()

if(messages.containskey(one_msg_key))

return messages;}}

}下面是control層:

用@responsebody標籤來接收非同步資料,返回前端資料型別為asyncresponsedata.resultdata,且函式第一行固定為 asyncresponsedata.resultdata data = asyncresponsedata.get200response();,用來先行接收前端資料

最常用的是用data.setdata(object)函式設定輸出資料,並return data;

用data.as500(object)傳輸錯誤資訊,並return data;傳於前端解析資料

比較好的企業封裝工具類,適合直接拿來使用,其餘功能讀者自行發現。

tldr 的安卓客戶端

在google play上找到了tldr的兩個android客戶端,由於在其它國內市場似乎沒有,所以分享給大家 這個相對要好一些,資料是離線的,並且整合了乙個小終端可以執行當前查到的命令 前提是你的系統有這些命令,並且是普通使用者可以跑的 也有些小問題 本部落格共享 本部落格共享 因為依賴於pyya...

安卓中的AsyncTask 非同步任務 上

class myasynctask extends asynctask 由於asynctask是乙個抽象類,要使用它,我們需要寫乙個類來繼承它,繼承它需要指定它的三個泛型引數 1 params 啟動asynctask時要傳入的引數,在後台任務中使用,比如http請求的url,一般為string型別 ...

安卓Tv端App開發與手機端的開發的區別

一 橫屏 android screenorientation landscape 不用多說,電視機一般都是橫屏的。二 焦點 tv端因為沒有觸控螢幕,所以需要設定判斷所有的控制項跟view的焦點,基本上所有的控制項都要使用到以下的方法 xml布局中加入android focusable true 還有...