Quindi sto lavorando con l'aggiornamento con un'API che ha una variabile chiamata "pubblico". Come farei per farlo mappare automaticamente come fanno tutte le altre variabili.Modifica della variabile json della mappa di adattamento alla parola chiave
Esempio:
@GET("/?filter=my_images")
void getMyImages(
@Query("client_id") String id,
@Query("api_key") String key,
Callback<ImageList> callback
);
public static class Image{
int id;
String name;
String distribution;
String slug;
// Can't do this:
boolean public;
}
public static class ImageList{
String status;
List<Image> images;
}
risultati Esempio API (JSON):
{
"status": "OK",
"images": [
{
"id": 1,
"name": "My first snapshot",
"distribution": "Ubuntu",
"slug": "ubuntu-12.10-x32",
"public": true
},
{
"id": 2,
"name": "Automated Backup",
"distribution": "Ubuntu"
}
]
}
Ha funzionato come un fascino. Sono nuovo nel trattare con le annotazioni, quindi ho dimenticato di dare un'occhiata a cose del genere. Questo aiuterà anche a sbarazzarsi di quelle brutte variabili non standard con underscore. – JaySee
@JaySee potresti anche dare un'occhiata alle opzioni 'setFieldNamingPolicy' /' setFieldNamingStrategy' quando crei il tuo 'GsonConverter' - questi possono essere usati per mappare automaticamente il JSON sottovalutato ai nomi delle proprietà dei cammelli (e viceversa) – swanson
Ciao Jake, qualcuno di Square può dare qualche suggerimento su questa domanda: http://stackoverflow.com/questions/24467416/retrofit-cache-control-never-included-in-response? – zatziky