`
hereson
  • 浏览: 1428773 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

FMS Client AS 自訂類別物件傳遞

    博客分类:
  • fms2
阅读更多

透過與 FMS 連線,可以共享 SharedObject 物件資料
但是資料內容僅限於 String、Number、Array 等基礎物件
不過可以使用 SharedObject.send 傳遞自訂類別的物件
以下是範例程式:

FMS SSAS:

application.onConnect = function() {
 return true;
};

自訂類別 MyClass.as:

class MyClass {
 public var name:String = "MyClass";
 public function MyClass() {
  trace("MyClass();");
 }
 public function fun():Void {
  trace("fun();");
 }
}

發布者 ActionScript:

Object.registerClass("MyClass",MyClass);
//
var nc:NetConnection = new NetConnection();
nc.onStatus = function(infoObj:Object):Void  {
 trace(infoObj.code);
 switch (infoObj.code) {
  case "NetConnection.Connect.Success" :
   so.send("getObj",new MyClass());
   break;
 }
};
nc.connect("rtmp:/so_app");
var so:SharedObject = SharedObject.getRemote("so", nc.uri);
so.connect(nc);

接受者 ActionScript:

Object.registerClass("MyClass",MyClass);
//
var nc:NetConnection = new NetConnection();
nc.onStatus = function(infoObj:Object):Void  {
 trace(infoObj.code);
 switch (infoObj.code) {
  case "NetConnection.Connect.Success" :
   break;
 }
};
nc.connect("rtmp:/so_app");
var so:SharedObject = SharedObject.getRemote("so", nc.uri);
so.getObj = function(obj) {
 trace("so.getObj();");
 trace(obj.name);
 obj.fun();
};
so.connect(nc);

最主要的關鍵步驟是 Object.registerClass("MyClass",MyClass);
同理也可以利用類似做法在 FMS SSAS 與 Client AS 之間共享類別物件

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics