2017-12-24 23 views
1

json 객체를 서버로 보내고 싶습니다. Response.ErrorListener()에서이 오류가 표시됩니다. ErrorListener를 'android studio의 발리 라이브러리가 요청을 보낼 수 없습니다.

에'onErrorResponse (VolleyError를) '

클래스'ErrorListener를에서 파생 된 익명 클래스 '중 하나 추상적 인 선언해야 또는 추상 메소드를 구현 : 나는 안드로이드 스튜디오에서 발리 라이브러리를 통해 요청을 보내려고하면

이 해당 인터페이스에 정의되지 않은 ErrorListener를 내 방법 (VolleyLog)를 호출하기 때문에

package com.example.mujtaba.quizzer; 

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.Spinner; 
import android.widget.TextView; 

import com.android.volley.Request; 
import com.android.volley.RequestQueue; 
import com.android.volley.Response; 
import com.android.volley.VolleyLog; 
import com.android.volley.toolbox.StringRequest; 
import com.example.mujtaba.quizzer.Activity.QuizMaking; 
import com.example.mujtaba.quizzer.Activity.QuizTaking; 

import org.w3c.dom.Text; 

import java.util.HashMap; 
import java.util.Map; 

public class Login extends AppCompatActivity { 
    private Button button; 
    private TextView username; 
    private TextView password; 
    private Spinner role; 
    private String url = "http://yourdomain.com/path"; 
    private RequestQueue MyRequestQueue; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_login); 

     username=(TextView) findViewById(R.id.username); 
     password=(TextView) findViewById(R.id.password); 
     button=(Button) findViewById(R.id.button); 
     role = (Spinner) findViewById(R.id.role); 

// Create an ArrayAdapter using the string array and a default spinner layout 
     ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, 
       R.array.role_spinner, android.R.layout.simple_spinner_item); 
// Specify the layout to use when the list of choices appears 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
// Apply the adapter to the spinner 
     role.setAdapter(adapter); 
    } 


    public void Quiz(View v) { //select a new activity on the basis of role 
     StringRequest MyStringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() { 
      @Override 
      public void onResponse(String response) { 
       //This code is executed if the server responds, whether or not the response contains data. 
       //The String 'response' contains the server's response. 
      } 
     }, new Response.ErrorListener() { //Create an error listener to handle errors appropriately. 
      @Override 
      public void onErrorResponse(VolleyLog error) { 
       //This code is executed if there is an error. 
      } 
     }) { 
      protected Map<String, String> getParams() { 
       Map<String, String> MyData = new HashMap<String,String>(); 
       MyData.put("Field", "Value"); //Add the data you'd like to send to the server. 
       return MyData; 
      } 
     }; 

     MyRequestQueue.add(MyStringRequest); 

     String text = role.getSelectedItem().toString(); 
     switch (text) { 

      case "Student": 
       Intent i = new Intent(getBaseContext(), QuizTaking.class); 
       startActivity(i); 
       break; 

      case "Instructor": 
       Intent j = new Intent(getBaseContext(), QuizMaking.class); 
       startActivity(j); 
       break; 
     } 
    } 
} 
+0

확인하시기 바랍니다 오류 메시지 –

+0

게시 https://stackoverflow.com/questions/28344448/how-to-send-json-object-to-server을 -using-volley-in-android –

+0

http://karn-neelmani.blogspot.in/2014/12/post-json-object-to-server-using-volley.html –

답변

0

귀하의 오류가 내 LoginActivity이다. 아래의 변경 :

new Response.ErrorListener() { //Create an error listener to handle errors appropriately. 
      @Override 
      public void onErrorResponse(VolleyLog error) { 
       //This code is executed if there is an error. 
      } 

을 위해 :

new Response.ErrorListener() { //Create an error listener to handle errors appropriately. 
      @Override 
      public void onErrorResponse(VolleyError error) {//Change is here 
       //This code is executed if there is an error. 
      } 
+0

고마워요. 그 트릭을했다 : ') –

+0

다행. ;) – HaroldSer