Является ли использование Parcelable правильным способом передачи данных между приложениями?
Я пытаюсь понять, как общаться между приложениями в Android, а не только междуActivity
экземпляров.
Я создалклиента который отправляет Messenger объект в службу (вIntent
отправлено в сервис); служба создаетMessage
объект и отправляет его обратно вклиента с помощьюmessenger.send(message)
, Это работает нормально, пока я не попытаюсь использовать Message.obj для хранения объекта.
Я создал свой собственныйParcelable
учебный классMyParcelable
в сервис и положить его в сообщение. Все работает, пока сообщение не будет разбито вклиента, Немаршалл проваливается, потому чтоклиента не имеет доступа кMyParcelable
учебный класс. Тот'очевидно - они находятся в разных пакетах (скажем,com.whatever.myclient
а такжеcom.whatever.myserver
). Это совершенно неправильный путь?
Я также пытался создатьParcel
и отправив его (таким образом, оба приложения будут иметь доступ к классу) - ноParcel
не являетсяParcelable
, Я читал об используемых загрузчиках классов, но не понимаю, как разделять загрузчики классов в отдельных приложениях (процессы, если я понимаю архитектуру Android в этом отношении). То есть как может быть один загрузчик классов?учил» о классе, который существует в другом загрузчике классов? Похоже, должно быть очевидноевот как ты это делаешь но я этого еще не видел.