- 浏览: 42971 次
- 性别:
- 来自: 珠海
最新评论
通过使用SharedObject数据可以被存储在用户的本地硬盘上,功能非常像浏览器的cookie。Flex应用程序可以存储简单数据类型如String
、Array等,或者用户自定义的对象类型到一个指定的位置。
共享对象:本地共享对象(local SharedObject)和远端共享对象(Remote SharedObject)
本地共享对象(local SharedObject)类似于浏览器的cookie。
远端共享对象(Remote SharedObject):远端共享对象需要使用FMS(FMS是什么?),它更像是实时的数据传输设备。当你想在一个多人参与的聊天室中实时查看聊天记录时,你可以在这个聊天应用程序中使用远端共享对象。当一个远端共享对象在客户机的机器上被更新,它会回馈更新到服务器上的这个共享对象,并会影响和更新其他正在查看相同共享对象的机器上指定的共享对象。
创建或打开一个本地共享对象:
private var myLocalSharedObject:SharedObject = SharedObject.getLocal("mylso");
默认的位置是,C:\Documents and Settings\Administrator\Application Data\Macromedia\Flash Player\#SharedObjects\ {web域}\{应用程序路径}\{应用程序名}\{object}.sol
如果想指定一个其他的位置,静态方法的getLocal的第二个参数可以指定。
创建或打开一个远端共享对象:
private var myRemoteSharedObject;SharedObject = SharedObject.getRemote("myRso");
写入数据到共享对象中
使用共享的对象的data属性添加数据到共享对象中。
官方说明: The collection of attributes assigned to the data property of the object; these attributes can be shared and stored. Each attribute can be an object of any ActionScript or JavaScript type - Array, Number, Boolean, ByteArray, XML, and so on. For example, the following lines assign values to various aspects of a shared object:
var items_array:Array = new Array(101, 346, 483); var currentUserIsAdmin:Boolean = true; var currentUserName:String = "Ramona"; var my_so:SharedObject = SharedObject.getLocal("superfoo"); my_so.data.itemNumbers = items_array; my_so.data.adminPrivileges = currentUserIsAdmin; my_so.data.userName = currentUserName; for (var prop in my_so.data) { trace(prop+": "+my_so.data[prop]); } Note: Do not assign values directly to the data property of a shared object, as in so.data = someValue; Flash Player ignores these assignments. 保存本地共享对象
使用SharedObject的flush方法。
lso.flush(500);
从共享对象中读取数据
使用SharedObject的data属性来得到数据,怎么写的就怎么读的。
删除共享对象
使用SharedObject类的clean()方法来清除一个共享对象。使用delete关键字来移除一个共享对象的data属性中的指定数据。 这两种不一样。
lso.clean();对于本地共享对象,清除所有数据并从磁盘删除共享对象。对共享对象的引用仍然处于活动状态,但其数据属性被删除。
使用delete关键字,只是删除了它的data属性中的指定数据。但这个对象并未从磁盘中删除。
序列化类型对象
我想能保存自定义数据类型到一个共享对象中。
使用registerClassAlias()方法来注册类型化的对象到Flash运行时,然后存储这个对象实例到一个共享对象中。
例子: width="500" height="198"> width="100%"> width="100%"/> width="100%"> width="100%"/> width="100%"> width="100%"> width="100%"/>
发表评论
-
字符串分割函数
2012-07-06 09:52 747最近与字符串打交道相对多些,C++最痛苦的地方就是对字符串 ... -
Code44 使用正则表达式以MM/DD/YYYY格式日期
2012-07-06 09:45 671下面是用正则表达式验证MM/DD/YYYY格式的日期,在A ... -
【正则】构造复杂SQL语句的正则表达式1
2012-07-06 09:37 913以前做人口数据库 ... -
Opera最小配置 之虎口拔牙!(打造上帝版实录手记)
2012-07-06 09:30 616目标锁定在: ... -
JavaScript隐藏控件的方法
2012-07-05 20:45 541用JavaScript隐藏控件的方法有两种,分别是通过设置 ... -
用C#创建COM组件全过程
2012-07-03 13:43 912用C##创建COM组件看 ... -
Chapter 22: Using Item Renderers and Item Editors--Creating item renderers and item editor components
2012-07-02 10:56 595Defining a custom item render ... -
CheckBox 列表的取值并用XML 对其进行赋值的例子
2012-07-02 10:56 719首先用一个XML对一组CheckBox进行赋值 然 ... -
网络分析与网络数据集―功能调用REST API
2012-07-02 10:56 628ArcGIS 9.3实现了REST ... -
Spring Roo开发初评
2012-07-01 00:38 560Spring Roo开发初评 我们广泛使用Spring M ... -
Ext 4 概述(七)之面板Panel & 杂项
2012-07-01 00:38 656支持了边界接触(D ... -
基于push技术的web实时网络管理框架研究
2012-07-01 00:38 5631 引言 基于 web 的网络管理是web 功能和网 ... -
一些有用的Web或者手机UI设计工具
2012-07-01 00:38 907http://www.webjx.com/webm ...
相关推荐
`SharedObject`类位于`flash.net`命名空间下,它提供了一个接口来在客户端存储数据。有两种类型的`SharedObject`: - **本地共享对象**:数据存储在用户的本地系统,可以在同一台计算机的不同应用程序之间共享。 - ...
5. **网络通信**:` flash.net`包提供了网络通信功能,如`URLLoader`用于加载数据,`XMLSocket`进行双向TCP通信,`SharedObject`处理客户端的数据共享。 6. **声音处理**:` flash.media`包包含了处理音频的类,如`...
5. **SharedObject**:在本地或服务器上存储小量数据,适合简单的用户状态保存或轻量级数据共享。C#端需要配合服务器端逻辑来处理SharedObject的数据。 在实际开发中,为了实现C#与Flash的交互,开发者通常会编写一...
- **永久的远程共享对象**:在客户端代码中,使用`SharedObject.getRemote()`并设置`persistence`参数为`true`,或在服务器端使用`SharedObject.get()`创建。这些对象以.fso扩展名存储在服务器上的特定目录下。 **...
一旦连接成功,可以通过 `SharedObject.getRemote()` 方法创建远程共享对象。以下是一个示例: ```actionscript private function connectionServer():void{ var nc:NetConnection = new NetConnection(); nc....
`SharedObject` 类则用于在多个客户端之间共享数据,这在多人聊天场景下尤为重要。通过监听 `NetStatusEvent.NET_STATUS` 事件,可以实时监控网络连接状态,确保程序在连接成功或失败时做出适当响应。 #### 知识点...
在线用户的状态通过FMS的共享对象(SharedObject)来维护。每个用户登录后,其在线状态会更新到SharedObject中,这样所有客户端都能实时获取到当前在线用户的信息。这种方式提高了效率,减少了服务器的负担,因为...
如果需要在不同域间共享数据或类,需要使用特定的通信机制,如LocalConnection或者SharedObject。 综上所述,Flex和Flash的关系是互补的,Flex提供了强大的框架和组件,使开发者能够更容易地构建复杂的RIA,而Flash...
在线用户的状态管理和通信通过FMS的共享对象(SharedObject)实现。SharedObject是客户端和服务器之间同步数据的一种机制,当用户登录时,其在线状态会被更新并广播给其他用户,实现在线用户列表的实时更新。 此外...
数据传输可能利用JavaScript Bridge(Silverlight与HTML页面交互的一种方式)、ExternalInterface(Flash与JavaScript的接口)或者特定的API,如Adobe's SharedObject API或Silverlight的IsolatedStorage。...
SharedObject是一种存储和读取数据的对象,可以在不同的SWF文件之间共享数据。这种方式适用于需要在多个SWF或Flex文件之间持久化存储数据的情况。 - **使用ExternalInterface**: ExternalInterface是Flex和SWF...