【发布时间】:2016-07-19 12:34:50
【问题描述】:
我一直在尝试使用共享对象,我需要提醒用户我要在共享对象中保存什么,但是每当我调用 flush() 时,我都无法获得当前的存储限制,即截至目前 100知识库。有什么方法可以获取特定域的共享对象的当前限制?
我什至尝试过刷新状态,但是刷新状态只有在它显示安全面板之后才会创建,我需要在刷新调用安全面板之前知道限制。
我需要这样的数据有限制 http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager07.html
【问题讨论】:
-
仅供参考:在 Flash 21(及更高版本)中,大小限制已被删除,现在每个域只有一个允许或拒绝选项......
-
我们能否查明用户是否允许/拒绝此域的数据存储
-
将
.flush放入try/catch 中,因为如果用户拒绝域LSO 访问,Error将被抛出。您应该检查版本 (flash.system.Capabilities.version) 以确定您是否可能有 LSO 大小限制,除非您可以强制您的用户使用 Flash/AIR 21+ -
我想知道用户是否在我调用 .flush 之前允许/拒绝了该域的数据存储,因为我想提醒我的用户要存储什么信息,我希望我的用户请注意,我将存储这些信息。
-
不可能,只有在您进行
flush调用后,您才会返回待处理状态,此时您知道用户已显示安全对话框。如果这是您的目标,请通过对话框预先警告用户并进行刷新。下次如果 LSO 存在(因为您可以阅读它),请不要显示警告对话框,因为您知道您可以编写 LSO,因为它已经存在
标签: actionscript-3 apache-flex actionscript flex4 mxml