InputStream a JsonObject – GSON
Tengo un montón de problemas para convertir un resultado de esta api a un JsonObject.
El "resultado" se mantiene nulo sin importar lo que trate de hacer.
- Entender la clase R en Android
- Parse: ¿Cómo puedo obtener Relation de un almacén de datos local (... fromLocalDatastore ())?
- Error de solicitud de HTTP POST de Android: error de socket EACCES (Permiso denegado)
- ClassCastException mientras usa varargs y genéricos
- Importar google-play-service dependencia cruz roja
URL url = new URL(urlString); InputStream input = url.openStream(); Reader reader = new InputStreamReader(in, "UTF-8"); JsonResult result = new Gson().fromJson(reader, JsonResult.class);
Clase JsonResult
public class JsonResult { private String status; private Meta meta; private ArrayList<Player> players; } class Meta{ private String count; }
Json:
{"status":"ok","meta":{"count":12},"data":[{"nickname":"DataBase","account_id":500566109},{"nickname":"database007","account_id":514382449},{"nickname":"Database04","account_id":504367425},{"nickname":"database08","account_id":515081772},{"nickname":"database1","account_id":503282284},{"nickname":"database1221","account_id":506709044},{"nickname":"database123","account_id":508409172},{"nickname":"database1337","account_id":501661259},{"nickname":"database169","account_id":503884400},{"nickname":"database2","account_id":504337382},{"nickname":"database93","account_id":518691821},{"nickname":"databaseking66","account_id":505911069}]}
Nota: Esto es para un proyecto escolar
Nota 2: Comprobé y probé muchas otras soluciones de SO pero no encontré ni entendí la correcta.
Editar 1:
public class JsonResult { @SerializedName("status") public String status; @SerializedName("meta") public Meta meta; @SerializedName("data") public Player[] players; } class Meta{ @SerializedName("count") private String count; }
Clase del jugador
public class Player { private int account_id; private String nickname; public Player(int account_id, String nickname){ this.account_id = account_id; this.nickname = nickname; } //Generated public void setAccount_id(int account_id) { this.account_id = account_id; } //Generated public void setNickname(String nickname) { this.nickname = nickname; } public String toString() { return this.account_id + this.nickname; } }
- NumberFormatException en las versiones europeas de Android?
- Cómo quitar el campo SECONDS de un DateFormat
- API de Android para detectar nuevos medios desde cámara incorporada y micrófono
- Android: Share ¿La intención de la imagen no funciona con Facebook?
- Error: "El proceso de daemon recién creado tiene un contexto diferente del esperado"
- Pasar de una actividad a otra
- Android - Prevenga la pantalla blanca al inicio
- Uso de las clases Fragment y AppCompatActivity juntos
En su cambio de clase JsonResult
public class JsonResult { private String status; private Meta meta; @SerializedName("data") private ArrayList<Player> players; }
- ¿Cómo crear una notificación con una vista personalizada, pero con una apariencia nativa?
- El color primario (a veces) se vuelve transparente