Retrofit erwartet BEGIN_OBJECT aber war BEGIN_ARRAY

Ich bin Recht neu auf JSON-parsing , ich bin mit dem Retrofit-Bibliothek Platz und lief in dieses problem.

Ich versuche zu Parsen von JSON response:

[
      {
        "id": 3,
        "username": "jezer",
        "regid": "oiqwueoiwqueoiwqueoiwq",
        "url": "http:\/\/192.168.63.175:3000\/users\/3.json"
      },
      {
        "id": 4,
        "username": "emulator",
        "regid": "qwoiuewqoiueoiwqueoq",
        "url": "http:\/\/192.168.63.175:3000\/users\/4.json"
      },
      {
        "id": 7,
        "username": "test",
        "regid": "ksadqowueqiaksj",
        "url": "http:\/\/192.168.63.175:3000\/users\/7.json"
      }
]

Hier sind meine Modelle:

public class Contacts {

    public List<User> contacts;

}

...

public class User {

    String username;
    String regid;

    @Override
    public String toString(){
        return(username);
    }  

}

mein Interface:

public interface ContactsInterface {

    @GET("/users.json")
    void contacts(Callback<Contacts> cb);

}

mein Erfolgs-Methode:

@Override
public void success(Contacts c, Response r) {
    List<String> names = new ArrayList<String>();
    for (int i = 0; i < c.contacts.size(); i++) {
        String name = c.contacts.get(i).toString();
        Log.d("Names", "" + name);
        names.add(name);
    }
    ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, names);
    mSentTo.setAdapter(spinnerAdapter);
}

Wenn ich es auf meinen Erfolg Methode, die den Fehler auslöst

Erwartet BEGIN_OBJECT aber war BEGIN_ARRAY in Zeile 1 Spalte 2

Was ist hier falsch?

InformationsquelleAutor der Frage Jezer Crespo | 2014-06-11

Schreibe einen Kommentar