![]() ![]() | |
Flash Player 6。
myLocalSharedObject.flush([minimumDiskSpace])
minimumDiskSpace 一个可选整数,指定必须为此对象分配的字节数。默认值为 0。
布尔值 true 或 false,或者是字符串值 "pending"。
true。(如果已为 minimumDiskSpace 传递了一个值,则所分配的空间量必须至少等于使此方法能够返回 true 的值)。"pending"。 false。方法;将本地永久共享对象立即写入本地文件。如果您不使用此方法,则 Flash 会在共享对象会话结束时(也就是说,在 SWF 文件关闭时、在共享对象不再具有引用而被作为垃圾回收时、或者在您调用 SharedObject.data 时)将共享对象写入文件。
如果此方法返回 "pending",Flash Player 将显示对话框要求用户增加磁盘空间量以供此域中的对象使用。若要允许将来保存共享对象时其空间能够“增长”,从而避免返回值 "pending",请为 minimumDiskSpace 传递一个值。当 Flash 尝试写入文件时,它查找传递到 minimumDiskSpace 的字节数,而不是查找以共享对象的当前大小保存该对象刚刚够用的空间。
例如,如果预期共享对象增长到最大大小 500 字节,则即使它开始时要小得多,也为 minimumDiskSpace 传递 500。如果 Flash 要求用户为该共享对象分配磁盘空间,它将要
求 500 字节。在用户分配了请求的空间量之后,当以后尝试刷新该对象时(只要其大小不超过 500 字节),Flash 将无需要求更多的空间。
在用户响应该对话框之后,此方法将被再次调用并返回 true 或 false;另外,将用 SharedObject.Flush.Success 或 SharedObject.Flush.Failed 的 code 属性调用 SharedObject.onStatus。
有关更多信息,请参见本地磁盘空间注意事项。
下面的函数获取共享对象 SO,并用用户提供的设置填充可写属性。最后,调用 flush() 以保存设置并分配最少 1000 字节的磁盘空间。
this.SyncSettingsCore=function(soname, override, settings)
{
var SO=SharedObject.getLocal(soname, "http://www.mydomain.com/app/sys");
// 设置列表索引
var i;
// 对于设置中每个指定的值:
// 如果 override 为 true,则将永久设置设置为所提供的值。
// 如果 override 为 false,则获取永久设置,除非
// 没有永久设置,在这种情况下,将其设置为所提供的值。
for (i in settings) {
if (override || (SO.data[i] == null)) {
SO.data[i]= settings[i];
} else {
settings[i]= SO.data[i];
}
}
SO.flush(1000);
}
![]() ![]() | |