`
wangangie29
  • 浏览: 42971 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
最近访客 更多访客>>
社区版块
存档分类
最新评论

flash.net.SharedObject共享对象

 
阅读更多

  通过使用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%"/>   
分享到:
评论

相关推荐

    Flash中数据的存储和读取

    `SharedObject`类位于`flash.net`命名空间下,它提供了一个接口来在客户端存储数据。有两种类型的`SharedObject`: - **本地共享对象**:数据存储在用户的本地系统,可以在同一台计算机的不同应用程序之间共享。 - ...

    flash as3中文API 帮助文档

    5. **网络通信**:` flash.net`包提供了网络通信功能,如`URLLoader`用于加载数据,`XMLSocket`进行双向TCP通信,`SharedObject`处理客户端的数据共享。 6. **声音处理**:` flash.media`包包含了处理音频的类,如`...

    C#与Flash交互

    5. **SharedObject**:在本地或服务器上存储小量数据,适合简单的用户状态保存或轻量级数据共享。C#端需要配合服务器端逻辑来处理SharedObject的数据。 在实际开发中,为了实现C#与Flash的交互,开发者通常会编写一...

    fms 中文文档 10

    - **永久的远程共享对象**:在客户端代码中,使用`SharedObject.getRemote()`并设置`persistence`参数为`true`,或在服务器端使用`SharedObject.get()`创建。这些对象以.fso扩展名存储在服务器上的特定目录下。 **...

    Flex与.NET互操作(十二):FluorineFx.Net的及时通信应用(Remote Shared Objects)(三)

    一旦连接成功,可以通过 `SharedObject.getRemote()` 方法创建远程共享对象。以下是一个示例: ```actionscript private function connectionServer():void{ var nc:NetConnection = new NetConnection(); nc....

    Flex视频语音文字聊天程序

    `SharedObject` 类则用于在多个客户端之间共享数据,这在多人聊天场景下尤为重要。通过监听 `NetStatusEvent.NET_STATUS` 事件,可以实时监控网络连接状态,确保程序在连接成功或失败时做出适当响应。 #### 知识点...

    FMS案例开发.pdf

    在线用户的状态通过FMS的共享对象(SharedObject)来维护。每个用户登录后,其在线状态会更新到SharedObject中,这样所有客户端都能实时获取到当前在线用户的信息。这种方式提高了效率,减少了服务器的负担,因为...

    Flex Flash的关系分析

    如果需要在不同域间共享数据或类,需要使用特定的通信机制,如LocalConnection或者SharedObject。 综上所述,Flex和Flash的关系是互补的,Flex提供了强大的框架和组件,使开发者能够更容易地构建复杂的RIA,而Flash...

    FMS案例开发[整理].pdf

    在线用户的状态管理和通信通过FMS的共享对象(SharedObject)实现。SharedObject是客户端和服务器之间同步数据的一种机制,当用户登录时,其在线状态会被更新并广播给其他用户,实现在线用户列表的实时更新。 此外...

    在两个Silverlight应用间数据通信(包括与Flash通信)

    数据传输可能利用JavaScript Bridge(Silverlight与HTML页面交互的一种方式)、ExternalInterface(Flash与JavaScript的接口)或者特定的API,如Adobe's SharedObject API或Silverlight的IsolatedStorage。...

    SWF之间通信、Flex与SWF之间通信

    SharedObject是一种存储和读取数据的对象,可以在不同的SWF文件之间共享数据。这种方式适用于需要在多个SWF或Flex文件之间持久化存储数据的情况。 - **使用ExternalInterface**: ExternalInterface是Flex和SWF...

Global site tag (gtag.js) - Google Analytics