В Blackberry, как общие объекты в runtimetore распознаются другими приложениями - PullRequest
0 голосов
/ 15 января 2011

В Blackberry Runtime Store при совместном использовании объектов между приложениями.Как мы можем вызывать методы общего объекта в другом приложении, если сам объект не распознается в другом приложении?я получаю ошибку времени выполнения, когда объект получает typecasted, поскольку этот объект не определен в вызывающем приложении.

Если я приведу его к суперинтерфейсу и получу интерфейс в другом приложении.Когда я вызываю getClass () для объекта, возвращенного из хранилища.Он отображается как конкретный экземпляр класса, хранящийся в RunTimeStore.

Как можно совместно использовать объект в runtimetore и использовать его в разных приложениях?

Ответы [ 2 ]

0 голосов
/ 17 января 2011

Вы, похоже, ответили на свой вопрос - вы можете настроить интерфейс, о котором знает вызывающее приложение. Если вы хотите привести класс / интерфейс, который не определен в вызывающем приложении, вам не повезло - это невозможно.

BlackBerry основан на Java ME (ранее J2ME), который имеет очень ограниченную поддержку отражения во время выполнения - по сути, это просто имена классов, которые вы уже видите, когда получаете имя класса из Runtime Store. В отличие от Java SE / EE, вы не можете вызывать методы в классах, используя имена методов в виде String - иногда это будет очень удобно, но, к сожалению, не поддерживается.

Итак, подведем итог: если вы не можете включить определение класса в вызывающее приложение, создайте интерфейс (или суперкласс) с методами, которые вызывающее приложение хочет вызвать, заставьте класс реализовать этот интерфейс и включить этот интерфейс / суперкласс в приложении вызова и другом приложении.

0 голосов
/ 15 января 2011

Указанный вопрос, кажется, отвечает на ваши вопросы.

Если вы помещаете com.foo.bar.MyClass, который реализует com.foo.bar.MyInterface в app1, вам также необходимо иметь его в app2.Пакет, который ваш класс и интерфейс, кажется, имеет значение.

Чем ваш вопрос отличается?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...