La mia app Android si collega a Firebase e richiama "Alert Objects" che vengono inviati lì dal mio server.Android Firebase - Impossibile ricevere JSON corretto dall'istantanea Firebase
Quando esporto i dati da Firebase, ottengo una rappresentazione JSON dei dati ottimamente formata.
Problema: Quando trasferisco i dati sul mio dispositivo Android utilizzando DataSnapshot, i dati hanno '=' (segni di uguale) invece di ':' (punto e virgola). Anche le quotazioni non ci sono.
Quando provo a fare qualcosa come JSONObject alert = new JSONObject(data.getValue().toString());
ottengo errori per ovvi motivi. Dico ovvio perché se si guarda ciò che il mio codice stampa sulla console si può vedere che non è più in formato JSON valido.
Un amico ha detto che ho bisogno di fare qualcosa con la codifica, ma non abbiamo avuto il tempo di discuterne.
Come posso scorrere questi oggetti di avviso (un po 'strani) che ho creato e trasformarli in oggetti JSON all'interno di Java in modo da poter accedere alle loro proprietà come alert.date
e alert.message
.
Pensavo che gli screenshot ti aiutassero a vedere quello che sto facendo. Il firebase non è protetto per cui puoi sentirti libero di dargli un'occhiata. Non farà molto e quando andrò in produzione lo sposterò comunque.
Sono sicuro che questa è una domanda super facile da rispondere, io sono solo non troppo ben versati con JSON e la codifica nel suo complesso .
Grazie!
Hai incluso una foto dell'albero JSON nella sua interrogazione. Sostituiscilo con il JSON attuale come testo, che puoi facilmente ottenere facendo clic sul pulsante Esporta nel database di Firebase. Avere il JSON come testo lo rende ricercabile, ci permette di usarlo facilmente per testare con i tuoi dati reali e usarlo nella nostra risposta e in generale è solo una buona cosa da fare. –
@FrankvanPuffelen Questa è una schermata del testo esportato Firebase. Sono sul mio telefono adesso ma quando torno a casa caricherò il testo ricercabile. Quello che vedi è il 99% di esso però. Sono solo poche altre righe. – Ryan