首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓NetworkManager实用类

安卓NetworkManager实用类
EN

Stack Overflow用户
提问于 2016-04-14 07:25:52
回答 1查看 420关注 0票数 0

我试着做一个util类,但是不起作用,如果有人知道我错过了什么,请告诉我。

Obs: restOfUrl和siteUrl是站点的路径。

//我调用util类的对象:

代码语言:javascript
复制
NetworkManager networkManager = new NetworkManager(getApplicationContext());
networkManager.requestStringVolley("/restOfTheUrl");

// util类:

代码语言:javascript
复制
public class NetworkManager {

String prefUrl = "siteUrl";
RequestQueue mRequestQueue;
Context contextNet;
private static final String TAG = NetworkManager.class.getSimpleName();

public NetworkManager(Context context){
    contextNet = context;
}
public void requestStringVolley(String posUrl){
    mRequestQueue = Volley.newRequestQueue(contextNet);
    String url = prefUrl + posUrl;

    Response.Listener<String> listener = new Response.Listener<String>(){
        @Override
        public void onResponse(String response) {
            sucessResponse(response);
        }
    };

    Response.ErrorListener listenerError = new Response.ErrorListener(){
        @Override
        public void onErrorResponse(VolleyError error) {
            errorResponse(error);
        }
    };

    StringRequest stringRequest = new StringRequest(Request.Method.GET, url, listener, listenerError);

    mRequestQueue.add(stringRequest);
}

public void sucessResponse(String response){
    Log.v(TAG, "Sucess");
}

public void errorResponse(VolleyError errorResponse){
    Log.v(TAG, "Error");
}
}

// -错误:

代码语言:javascript
复制
04-13 19:18:45.096 23880-23880/com.dev.kamui.patrulhacomunitaria E/AndroidRuntime: FATAL EXCEPTION: main
                                                                               Process: com.dev.kamui.patrulhacomunitaria, PID: 23880
                                                                               java.lang.NullPointerException
                                                                                   at com.android.volley.Request.<init>(Request.java:136)
                                                                                   at com.android.volley.toolbox.StringRequest.<init>(StringRequest.java:43)
                                                                                   at com.dev.kamui.patrulhacomunitaria.NetworkManager$override.requestStringVolley(NetworkManager.java:41)
                                                                                   at com.dev.kamui.patrulhacomunitaria.NetworkManager$override.access$dispatch(NetworkManager.java)
                                                                                   at com.dev.kamui.patrulhacomunitaria.NetworkManager.requestStringVolley(NetworkManager.java:0)
                                                                                   at com.dev.kamui.patrulhacomunitaria.Pagina_Principal$1.onClick(Pagina_Principal.java:50)
                                                                                   at android.view.View.performClick(View.java:4438)
                                                                                   at android.view.View$PerformClick.run(View.java:18422)
                                                                                   at android.os.Handler.handleCallback(Handler.java:733)
                                                                                   at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                                   at android.os.Looper.loop(Looper.java:136)
                                                                                   at android.app.ActivityThread.main(ActivityThread.java:5001)
                                                                                   at java.lang.reflect.Method.invokeNative(Native Method)
                                                                                   at java.lang.reflect.Method.invoke(Method.java:515)
                                                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
                                                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
                                                                                   at dalvik.system.NativeStart.main(Native Method)
EN

回答 1

Stack Overflow用户

发布于 2016-04-14 07:41:46

将其与以下各项配合使用:

代码语言:javascript
复制
sucessResponse(response.toString());

errorResponse(error);

public void sucessResponse(String response){
    Log.v(TAG, response);
}

public void errorResponse(VolleyError errorResponse){
    Log.v(TAG, "Error: " + errorResponse.getMessage());
}

我不知道为什么我要用这种方式工作...但我知道它是有效的,这正是我所需要的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36611268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档