(封)【SharedObject】—— 极限研究

Accessor

1. data —— 共享对象数据(只读)。data数据位


2. size —— 共享对象大小,单位字节。当大小为零时(没有任何数据),不会产生LSO文件(后缀名sol),如果文件存在则自动削除!!


Method

1. getLocal(name,localPath)(静态) —— 获取共享对象,没有则生成新的。(路径参数错误的话会抛出错误。。[Fault] exception, 情報=Error: Error #2134: 无法创建 SharedObject。

参数localPath详解:创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。

为避免意外限制对共享对象的访问,请使用localpath 参数。


①. 无参数,localhost文件夹下会自动生成工程相关文件夹,LSO文件存在于里面。(类似despair2d - bin - despair2d.swf - xxx.sol)


②. 允许级别最高的方法是将 localPath 设置为 /(斜杠),这样做可使域中的所有 SWF 文件都可访问该共享对象,但会增加与域中其它共享对象发生名称冲突的可能性。(文件存在于localhost文件夹下面)


2. flush(minDiskSpace = 0) —— 刷新,即时保存共享对象至文件。参数为申请最小磁盘空间(如果数据大小确定,使用此参数可提高性能?未确定。。)

如果用户已永久禁止对来自该域的对象进行本地信息存储(选中 ”不再询问“),则可能出现错误。[Fault] exception, 情報=Error: Error #2130: 无法刷新 SharedObject。


3. clear —— 清除全部共享对象数据(等同于将data数据全部清空)。


注意事项

1. 如果不使用flush,关闭Flash播放器时会自动会自动保存,但不建议这样做:

        原因1: Flash播放器拥有最大本地存储空间限制,当存储空间不足时,共享对象数据(data)会被以二进制的形式中途 “截掉”。。使用flush时,返回PENGING(请求更多占用空间)或FLUSHED(刷新成功),给予用户更多的自由选择空间。

        原因2: 当空间不足时(返回PENGING),Flash播放器会弹出窗口提示用户。(而不是莫名其妙的让数据 ”消失“。。)


2. LSO文件的本地路径(Windows7):

Users —— Administrator —— AppData —— Roaming —— Macromedia —— Flash Player —— #SharedObjects —— 随机名字 —— localhost。。。。

Users —— Administrator —— AppData —— Roaming —— 項目id。。。。


3. FLASH AIR上面,有時候編譯時sol文件會自動消失(這可能是Flash自身bug),解決辦法:

再生成一個主文件(Main),然後將原主文件代碼全部複製過來,編譯時則不會再消失(項目第一個或是第一次編譯的主文件會出現問題?)。


你可能感兴趣的:((封)【SharedObject】—— 极限研究)