2017-07-06 8 views
0

次の例外を投げているボレーコード "仮想メソッド 'int java.lang.String.hashCode()'を呼び出そうとしています。Volleyライブラリを使用してMysqlデータベースにデータを投稿することができません

7月6日08:07:54.315 2837年から2837年/ com.example.jawadtariq.uogtransporttrackingsystem E/AndroidRuntime:

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"); 

ここでは、エラーのログで致命的な例外:メイン プロセス: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) 

最後に一つは、私がpostin前に、この例外をGoogleで検索しているということですここで問題の質問のほとんどは間違ったURLを持っています。しかし私の場合、URLは正しいです。

+0

多分これはあなたのために(https://stackoverflow.com/q/31302011/5180017)[検索]しているものです。 – Shashanth

答えて

1

volley request-queueのインスタンスを宣言し、その中に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

しかし、私はvolleyシングルトンクラスと私のコードをコンパイルして使用していますが、上記のように例外をスローしています – jawad

+0

あなたがローカルにあなたのURLをホストしている場合は、アンドロイドデバイスの場合は127.0.0.1、AVDデバイスの場合は10.0.2.2で試してみてください。お使いのPCとデバイスが同じ接続になっていることを確認してください。 @jawad .. –

0

あなたもここにボレーについての詳細を学ぶことができ http://www.androidhive.info/2014/05/android-working-with-volley-library-1/

+1

投稿リンクのみ回答を投稿しないでください。外部のリソースへのリンクは推奨されますが、リンクの前後にコンテキストを追加して、仲間のユーザーには何か、その理由を理解させてください。ターゲットサイトに到達できない場合や、永続的にオフラインになる場合は、常に重要なリンクの最も関連性の高い部分を引用してください。 – Shashanth

関連する問題