2017-07-06 71 views
0

这是抛出异常的排除代码 “试图调用虚拟方法'int java.lang.String.hashCode()”。我不能使用Volley库将数据发布到Mysql数据库

String url = "http://192.168.60.02/TransportTracking/main.php"; 

StringRequest postRequest = new StringRequest(Request.Method.POST, url, 
     new Response.Listener<String>() 
     { 
      @Override 
      public void onResponse(String response) { 
       // response 
       Log.d("Response", response); 
      } 
     }, 
     new Response.ErrorListener() 
     { 
      @Override 
      public void onErrorResponse(VolleyError error) { 
       // error 
       Log.d("Error.Response", error.getMessage()); 
      } 
     } 
) { 
    @Override 
    protected Map<String, String> getParams() 
    { 
     Map<String, String> params = new HashMap<String, String>(); 
     params.put("long","100"); 
     params.put("lat", "200"); 
     params.put("recordtime","acbcbcb"); 

     return params; 
    } 
}; 
    AppController.getInstance().addToRequestQueue(postRequest, "tag_json_obj"); 

和下面是错误的日志:

8月7日至6日:07:54.315 2837年至2837年/ com.example.jawadtariq.uogtransporttrackingsystem E/AndroidRuntime:致命异常:主 过程:COM .example.jawadtariq.uogtransporttrackingsystem,PID:2837

java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.hashCode()' on a null object reference at com.android.volley.Request.(Request.java:136) at com.android.volley.toolbox.StringRequest.(StringRequest.java:43)

                        at com.example.jawadtariq.uogtransporttrackingsystem.LocationService$3.<init>(LocationService.java:98) 
                           at com.example.jawadtariq.uogtransporttrackingsystem.LocationService.onConnected(LocationService.java:81) 
                           at com.google.android.gms.common.internal.zzac.zzn(Unknown Source) 
                           at com.google.android.gms.internal.zzbco.zzm(Unknown Source) 
                           at com.google.android.gms.internal.zzbcc.zzpY(Unknown Source) 
                           at com.google.android.gms.internal.zzbcc.onConnected(Unknown Source) 
                           at com.google.android.gms.internal.zzbcw.onConnected(Unknown Source) 
                           at com.google.android.gms.internal.zzbbh.onConnected(Unknown Source) 
                           at com.google.android.gms.common.internal.zzaa.onConnected(Unknown Source) 
                           at com.google.android.gms.common.internal.zzn.zzrj(Unknown Source) 
                           at com.google.android.gms.common.internal.zze.zzs(Unknown Source) 
                           at com.google.android.gms.common.internal.zzi.zzrk(Unknown Source) 
                           at com.google.android.gms.common.internal.zzh.handleMessage(Unknown Source) 
                           at android.os.Handler.dispatchMessage(Handler.java:102) 
                           at android.os.Looper.loop(Looper.java:135) 
                           at android.app.ActivityThread.main(ActivityThread.java:5221) 
                           at java.lang.reflect.Method.invoke(Native Method) 
                           at java.lang.reflect.Method.invoke(Method.java:372) 
                           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 
                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 

最后一两件事提的是,我用Google搜索postin之前此异常g这里和大多数问题问题都有不正确的URL。但在我的情况下,URL是正确的。

+0

这也许是你在做什么[搜索](https://stackoverflow.com/q/31302011/5180017)进行。 – Shashanth

回答

1

声明一个抽象请求队列的实例,然后在其中添加一个stringRequest。 like

RequestQueue requestQueue = 
      Volley.newRequestQueue(getApplicationContext()); 
StringRequest postRequest = new StringRequest(Request.Method.POST, url, 
     new Response.Listener<String>() 
     { 
      @Override 
      public void onResponse(String response) { 
       // response 
       Log.d("Response", response); 
     } 
     }, 
     new Response.ErrorListener() 
     { 
      @Override 
      public void onErrorResponse(VolleyError error) { 
       // error 
       Log.d("Error.Response", error.getMessage()); 
      } 
     } 
    ){ 
    @Override 
    protected Map<String, String> getParams() 
    { 
     Map<String, String> params = new HashMap<String, String>(); 
     params.put("long","100"); 
     params.put("lat", "200"); 
     params.put("recordtime","acbcbcb"); 
     return params; 
    } 
}; 

requestQueue.add(postRequest); 

这是我的工作代码。

+0

但我使用排球单身类和我的代码编译,但正在抛出异常,如上所述 – jawad

+0

如果你已经在本地托管你的url然后尝试与Android设备127.0.0.1和10.0.2.2 AVD设备。确保您的PC和设备处于相同的连接状态。 @jawad .. –

相关问题