Chason NoHttp框架的使用。

2023-05-10 18:51:20 浏览数 (1)

代码语言:javascript复制
/**
 * 作者:Created by Chason on 2016/7/11 0011 08:33
 * 功能:链接网络
 */
public class NetWorkUtils {

    private RequestQueue requestQueue;

    //单例设计模式,为了减少创建对象所产生的内存消耗.
    private static NetWorkUtils NWUtils;
    private NetWorkUtils(){
    }
    public static NetWorkUtils GetInstance(){
        if(NWUtils==null){
            NWUtils=new NetWorkUtils();
            return NWUtils;
        }else{
            return NWUtils;
        }
    }
    /**
     * 创建请求对象
     * @param url 网络URl地址
     * @return request  返回的是请求对象
     */
    public Request<String> PostString(String url){
        // String 请求对象
        Request<String> request = NoHttp.createStringRequest(url, RequestMethod.POST);
        request.add("md5",Md5Utils.encode("123456"));//MD5加密
        return request;
    }
    /**
     *
     * @param time 用于请求并发
     * @param what 用于识别不同请求。
     * @param request  网络请求
     * @param httpLinstener  完成监听
     */
    public void StartRequest(int time,int what,Request<String> request,OnResponseListener httpLinstener){
        if(requestQueue==null) {
             requestQueue = NoHttp.newRequestQueue();
        }else{
        }
        requestQueue.add(what,request,httpLinstener);
    }

}

在如下使用中:

代码语言:javascript复制
 NWUtlis.StartRequest(0, 0, NWUtlis.PostString(""), new OnResponseListener() {
                    @Override
                    public void onStart(int what) {

                    }

                    @Override
                    public void onSucceed(int what, Response response) {
                    //拿到值之后就ok了。

                    }

                    @Override
                    public void onFailed(int what, String url, Object tag, Exception exception, int responseCode, long networkMillis) {

                    }

                    @Override
                    public void onFinish(int what) {

                    }
                });

0 人点赞