Передача экземпляров классов между приложениями в Android - PullRequest
1 голос
/ 18 марта 2010

У меня есть приложение App1, которое определяет класс A и использует экземпляры этого класса. Чего я хочу добиться, так это - после того, как приложение App1 установлено на устройстве, чтобы иметь возможность загрузить приложение App2, которое определяет и реализует класс B, который является подклассом класса A (импортируется из пакета App1); и иметь возможность получить экземпляр класса B в App1. Класс B не добавляет никаких новых интерфейсов, поэтому использовать его как класс A можно. Но я не уверен, как передать экземпляр класса B в App1 (желательно без какого-либо взаимодействия с пользователем).

Кто-нибудь может посоветовать, если это возможно?

1 Ответ

2 голосов
/ 18 марта 2010

В буквальном смысле это невозможно. App1 и App2 будут работать на разных виртуальных машинах, возможно, в разных процессах. Невозможно переместить объект между ними, равно как нельзя переместить объект Java между апплетом и сервером JavaEE.

Ваши варианты:

  1. Использование удаленных сервисов и AIDL для реализации удаленного вызова процедур, эффективно предоставляя вам «передачу по ссылке» между приложениями
  2. Используйте Parceable и Intent дополнения, эффективно предоставляя вам "проход по стоимости" между приложениями
...