¿Está utilizando Parcelable la forma correcta de enviar datos entre aplicaciones?
Estoy tratando de entender cómo comunicarme entre aplicaciones en Android, no solo entreActivity
instancias.
Configuré un 'cliente' que envía un obj de Messenger a un Servicio (en elIntent
enviado al servicio); el servicio crea unMessage
obj y lo envía de nuevo al 'cliente' usandomessenger.send(message)
. Esto funciona bien hasta que trato de usar el Message.obj para contener un objeto.
Creé mi propiaParcelable
claseMyParcelable
En el servicio y ponerlo en el mensaje. Todo funciona hasta que el mensaje no se vea en el 'cliente'. El unmarshall falla porque el 'cliente' no tiene acceso a laMyParcelable
clase. Eso es obvio - están en paquetes diferentescom.whatever.myclient
ycom.whatever.myserver
). ¿Es esta la forma completamente equivocada de hacer esto?
También he intentado crear unParcel
y enviar eso (ambas aplicaciones tendrían acceso a la clase), peroParcel
no esParcelable
. He leído sobre el uso de cargadores de clases, pero no entiendo cómo los cargadores de clases se separan en aplicaciones separadas (procesos, si entiendo la arquitectura de Android en ese sentido). Es decir, ¿cómo se puede "enseñar" un cargador de clases sobre una clase que existe en el otro cargador de clases? Ciertamente parece que debería haber un obvio 'así es como lo haces', pero todavía no lo he visto.