本机不同程序间的通讯

1.接受消息,执行方法

//创建LocalConnection对象,接受消息

_localConn=new LocalConnection();

//建立连接对象

_localConn.client=this;

try

{

  //准备一个 LocalConnection 对象,以接收来自 send() 命令(称为发送方 LocalConnection 对象)的命令。

  _localConn.connect("_ADPlayer");

  //指定一个或多个可以将 LocalConnection 调用发送到此 LocalConnection 实例的域。

  _localConn.allowDomain("*");
  } catch (error:ArgumentError) {
  trace("无法连接...连接的名称已经被另一个SWF使用");
}

 

/**
*打开声音
*
*/
public function openVolume():void
{
  if(_xml){
  _mediaPlayer.defaultVolume=Number(_xml.appVolume);
  }
}
/**
*关闭声音
*
*/
public function closeVolume():void
{
  _mediaPlayer.defaultVolume=0;
}

 

2.发送消息端

_sendConn=new LocalConnection();

_sendConn.client=this;

//停止声音

function onClickStop():void

{

  //在使用 connect(connectionName) 方法打开的连接(接收方 LocalConnection 对象)上调用名为 methodName 的方法

  //AIR程序的格式(app#派发段主程序id:通道名称),方法名,参数(或者直接写被调用的方法名称),player程序的格式,(方法端主程序id)

  _sendConn.send("app#:ADPlayer:ADPlayer","onLocDataHandler","closeVolume");

  _sendConn.send("app#:ADPlayer:ADPlayer","closeVolume");

 ( player格式:_sendConn.send("ADPlayer","onLocDataHandler","closeVolume");)

  _loconn.allowDomain("*");

}

//打开声音

function onClickPlay():void

{

  _sendConn.send("app#ADPlayer:ADPlayer","openVolume");

  _loconn.allowDomain("*");

}

 

posted @ 2016-10-10 18:00  bokeyuanjp  阅读(281)  评论(0)    收藏  举报