2009/01/16

Adobe AIRとJavaをMerapiで連携

以前、無理矢理AIRからソケット接続でJavaと連携させたことあったけど、そんな必要ないのか!?

Building a Bridge between Adobe AIR and Java

http://www.merapiproject.net/

ムラピ火山(メラピって発音かな)のムラピ?
AIRとJava間で共通のブリッジを通して、メッセージをやり取りする。
今のところαリリースで、ダウンロードにはユーザー登録が必要。

※図とソースコードはHow Merapi Worksより引用
Sending a message from ActionScript:

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


Sending a message from Java:

Bridge bridge = Bridge.getInstance();

Message message = new Message();
message.setData("Hello from Merapi Java.");
bridge.sendMessage(message);


Receiving a message in Flex:

<merapi:BridgeInstance
id="bridge" result="handleResult(event)" />

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


Receiving a message in Java:

Bridge.getInstance().registerMessageHandler("Reply", messageHandlerInstance );

public void handleMessage( IMessage message )
{
System.out.println( message.getData() );
}
Merapiを使って、AIRからレゴマインドストームロボット(Lego Mindstorm Robot)を操作してる!?
(lego Mindstorm APIを使うJavaと連携してるっぽい)


※追記(2009/02/27)
MerapiがついにInfoQでも紹介されました。
Merapiプロジェクト:AIRおよびJavaのブリッジ
http://www.infoq.com/jp/news/2009/02/merapi-project

0 件のコメント: