Integrando Adobe AIR e java em ambiente desktop

Procurando por soluções de comunicação entre adobe air e java, acabei encontrando o projeto Merapi, que visa fazer uma ponte entre aplicações desktop que utilizam as tecnologias adobe air e java, através de sockets. Por intermédio do projeto merapi alguns problemas podem ser solucionados como controle do hardware e acesso a bibliotecas locais (dll’s, lib’s).


A comunicação e alcançada através da classe que existe no java e Action Script chamada merapi.Bridge. O caminho mais rápido para a comunicação do adobe air para o java, e por envio e recebimento de mensagens usando Merapi como ponte.
Um exemplo do envio de mensagem a partir do ActionScript.

var message : Message = new Message();
message.data = “Hello from Merapi Flex.”;
message.type = “Reply”;
Bridge.instance.sendMessage( message );

Um exemplo do envio de mensagem a partir do java;

Bridge bridge = Bridge.getInstance();
Message message = new Message();
message.setData(“Hello from Merapi Java.”);
bridge.sendMessage(message);

Recebendo uma mensagem no Flex.

<merapi:BridgeInstance
id=”bridge” result=”handleResult(event)” />
<mx:Script>
<![CDATA[
private function handleResult( event : ResultEvent ) : void
{
var message : IMessage = event.result as IMessage;

Recebendo uma mensagem no java

Bridge.getInstance().registerMessageHandler("Reply", messageHandlerInstance );
public void handleMessage( IMessage message )
{
System.out.println( message.getData() );
}

Merapi.


3 comentários

  1. ricardo em 6.set.08 às 3:10 pm

    rafael… qual rafael? acho legal se colocar o sobrenome desse rafael tb.. é legal para conhecer.

  2. silvio em 12.ago.09 às 9:58 am

    E isso funciona? Do jeito que está?
    Acho que falta bastante coisa ainda.

  3. Wemerson Guimarães em 18.abr.11 às 10:28 am

    Bom dia.

    Recurso interessante… dá pra interagir com SOs diferentes (Windows, linux, Mac)? E ainda executar comandos como Reboot, shutdown, capturar tela, etc?

Deixe Seu Comentário