Flex / Air, как загрузить класс, который находится на другом модуле - PullRequest
0 голосов
/ 06 сентября 2010

Я пытаюсь создать свое гибкое модульное приложение и получил следующий сценарий

Портал (в который входят 2 модуля :) -Mod1 (.swf) -Mod2 (.swf)

Кроме того, у меня есть Mod1-API (.swc)

Mod1-API, определяет интерфейсы, которые реализованы на Mod1 (.swf). SWF-файлы Mod1 и Mod2 импортируют SWC-файл Mod1-API.

Я пытаюсь вызвать метод API на Mod2. На Mod2 у меня есть интерфейс, так как он используется совместно с проектом Mod1-API.

Я пытаюсь добиться реальной загрузки класса реализации в Mod2 с помощью отражения, используя метод getDefinitionByName, но он говорит, что он не определен.

Итак, есть ли способ достичь этого?

Я имею в виду, как из mod2 загрузить класс, который находится в проекте Mod1, возвращая только interfacce для mod2, чтобы он мог вызывать методы, как обычный метод API?

1 Ответ

1 голос
/ 06 сентября 2010

Это зависит от того, куда вы загружаете определения классов.Flex использует как домены безопасности, так и домены приложений для разделения загруженного кода.

Если вы хотите, чтобы модуль 2 имел доступ к коду, загруженному через модуль 1, их необходимо загружать как в одинаковые домены безопасности, так и в домены приложений.

Это должно дать вам хорошее начало.

...