shareObject的使用
来源:互联网 发布:大数据入门 编辑:程序博客网 时间:2024/05/14 15:48
shareObject的使用
时间:2008.07.10 15:35:00
标签:
要在RED5中使用远程sharedObject,必须注意以下几点:
1,
sharedObject = SharedObject.getRemote( “远程sharedObject名称“, nc.uri, true );
对借助服务器在多个客户端间共享的对象返回一个SharedObject的引用。
nc为NetConnection对象。
2,
sharedObject.client = this;
客户端对象为本身。便于广播消息,监听事件。
3,
sharedObject.connect( nc );
通过nc链接到服务器。
4,
在与flashplayer 9以前发布的FMS服务器进行sharedObject交互时,
一定要指定nc.objectEncoding = flash.net.ObjectEncoding.AMF0;
否则flash无法监听到SYNC事件。目前使用的RED5服务器也是如此。
FLEX实例代码:
<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” creationComplete=”initFun()”>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
private var nc:NetConnection;
private var clientID:Number;
private var soChat:SharedObject;
private var arr:Array = new Array();
[Bindable]
private var con:ArrayCollection;
private function initFun():void
{
nc = new NetConnection();
nc.objectEncoding = flash.net.ObjectEncoding.AMF0;
nc.addEventListener(NetStatusEvent.NET_STATUS,statusHandler);
nc.connect( “rtmp://localhost/MySOSample” );
}
private function statusHandler(event:NetStatusEvent):void
{
if(event.info.code == “NetConnection.Connect.Success”){
connectToChat();
}
}
private function connectToChat():void
{
soChat = SharedObject.getRemote( “wxwred5″, nc.uri, true );
soChat.addEventListener( NetStatusEvent.NET_STATUS, netStatusHandler );
soChat.addEventListener( AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler );
soChat.addEventListener( SyncEvent.SYNC, sharedObjectSyncHandler );
soChat.client = this;
soChat.connect( nc );
soChat.send( “getName” );
}
public function getName():void
{
trace( “getName: ” + txtUser.text );
soChat.setProperty(”key”,txtUser.text);
}
public function newName(str:String):void
{
arr.push(str);
soChat.setProperty(”arr”,arr);
con = new ArrayCollection(arr);
}
private function sharedObjectSyncHandler( event:SyncEvent ):void
{
trace( “sharedObjectSyncHandler:code: ” + event.changeList );
arr.push(event.target.data.key);
con = new ArrayCollection(arr);
}
private function netStatusHandler( event:NetStatusEvent ):void
{
trace( “netStatusHandler:code: ” + event.info.code );
}
private function asyncErrorHandler( event:AsyncErrorEvent ):void
{
trace( “asyncErrorHandler:code: ” + event.error );
}
]]>
</mx:Script>
<mx:TextInput id=”txtUser” horizontalCenter=”1″ verticalCenter=”-109″/>
<mx:Button click=”getName()” label=”Button” horizontalCenter=”0″ verticalCenter=”-53″/>
<mx:List id=”listView” height=”203″ dataProvider=”{con}” verticalCenter=”68″ horizontalCenter=”0″></mx:List>
</mx:Application>
本文来源于 冰山上的播客 http://xinsync.xju.edu.cn , 原文地址:http://xinsync.xju.edu.cn/index.php/archives/1549
- shareObject的使用
- ShareObject使用
- (Flex) 使用 ShareObject 類別
- ShareObject
- Red5-ShareObject
- Flex ShareObject
- flex shareObject对象详解
- flex shareObject对象详解
- ShareObject存储相关
- AS3 ShareObject类示例研究
- FLEX提高篇--------ShareObject对象详解
- flex招式八:flex共享对象ShareObject
- flex共享对象ShareObject在win7系统本地保存路径
- 一个小工具类,利用shareObject把数据缓存
- flash shareobject能实现跨域数据共享吗?(学习笔记)
- GUID使用的使用
- ${}的使用
- 的使用
- 机器人学习日志1
- html表格自动换行
- 写此blog的目的
- 12.1 认识RSS (征服ASP.NET 2.0 Ajax——Web开发技术详解 )
- Asp.net 数据采集基类(远程抓取,分解,保存,匹配)
- shareObject的使用
- Grub 原理/代码分析
- ASP.NET中将数据输出到WORD、EXCEL、TXT、HTM
- Mogre学习笔记(三)
- 12.2 了解要开发的RSS阅读器 (征服ASP.NET 2.0 Ajax——Web开发技术详解)
- 无俗念·龙宫礼奈
- Brother的大学本科学历网上查询结果
- 软件标准化问题
- 网衬模式路向何方