Domanda

Voglio inviare dati complessi dal mio Android ad un server remoto tramite TCP-socket. So che ho bisogno di serializzare gli oggetti. In Android questo viene fatto tramite Parcelable. Ma questa è una specifica interfaccia di Android e il server sa solo l'interfaccia serializzabile. Anche viceversa android non sa un'interfaccia serializzabile.

Sia l'androide e il server deve "conoscere" l'oggetto, ma la loro applicazione in due modi diversi (server -> serializzabile, android -> Parcelable)

Come posso utilizzare queste interfacce correttamente, in modo che io possa inviare oggetti tramite TCP al server con successo?

È stato utile?

Soluzione

Abbiamo avuto lo stesso problema qui al lavoro e siamo passati a JSON. Forse si dovrebbe prendere in considerazione di fare lo stesso?!

Modifica: Android fa sapere l'interfaccia Serializable. Come potrei dimenticato ...

Altri suggerimenti

Perché non usare semplice serializzazione XML, funziona sia con Android e Java 1.5+. Si trova presso il seguente sito.

http://simple.sourceforge.net

Inoltre, il quadro è abbastanza piccola e adatta a piattaforma mobile (circa 270K senza dipendenze). Ed è molto più performante rispetto alla maggior parte serializzazione XML o quadri vincolanti.

http://developer.android.com/reference/android/ os / Parcel.html non è opportuno utilizzare un pacco per la persistente (o di rete) serializzazione:

  

parcella non è un meccanismo di serializzazione general-purpose. Questa classe   (E l'API Parcelable corrispondente per posizionare oggetti arbitrari   in un pacchetto) è realizzato come un trasporto IPC alte prestazioni. Come   tale, non è opportuno collocare dati pacchi per persistente   stoccaggio: modifiche nell'attuazione sottostante nessuno dei dati   nella parcella può rendere illeggibili i dati più vecchi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top