Angesichts der folgenden JSON:JSON Gson Modellierung
{
"rmhc_config": {
"show_donation": true,
"campaignEnabled": true,
.
.
.
Ich habe die folgende Klasse Modell
public class RMHCConfigModel implements Serializable{
@SerializedName("show_donation")
private boolean showDonation;
@SerializedName("campaignEnabled")
private boolean campaignEnabled;
.
.
.
einrichten Zugänglich über:
Gson gson = new Gson();
RMHCConfigModel config = gson.fromJson(configValue.toString(), RMHCConfigModel.class);
I verifiziert configValue.toString haben() gibt den richtigen JSON im String-Format zurück.
Das Problem ist showDonation wird zurückgegeben als false. Ich kann nicht herausfinden, warum. campaignEnabled wird korrekt zurückgegeben, hat das etwas mit zu tun showDonation ist das erste Element?
Danke, Otterman
Arbeitet danke! Jede Idee, warum @SerializedName angegeben wurde, hat sich nicht darum gekümmert? – Otterman
Ich bin mir nicht 100% sicher, aber meine Vermutung ist, dass es funktionieren würde, wenn Sie ein 'JSONObject' anstelle von' Gson' verwenden würden. Im Moment scheint 'showDonation' den Standard-Java-Wert für boolean zu erhalten, was falsch ist. –