apache-flex - 如何在 Adob​​e Flex/AIR 应用程序中存储用户首选项

标签 apache-flex air

在 AIR 的 Flex 应用程序中存储用户首选项的标准方法是什么?我需要存储简单的参数,例如最近打开的文件列表、窗口位置和大小等。

最佳答案

我最喜欢的方法是将 VO 与 LSO(本地共享对象)结合起来。如果你有很多设置,这不太好。优点是你得到一个强类型设置对象,因此是 可绑定(bind) 并且有 代码自省(introspection)与补全 .

很酷的是管理一个 LSO 只需要大约 5 行代码。此外,如果您想存储任何敏感数据,管理本地加密存储也非常容易。

registerClassAlias("SettingsVO",SettingsVO);  //This lets us store a typed object in LSO
var settings:SettingsVO;
var settingsSO = SharedObject.getLocal("settings");   
//Check to make sure settings exist... if not, create a new settings object
if( settingsSO.size && settingsSO.data && settingsSO.data.settings){
    settings = settingsSO.data.settings as SettingsVO;
}else{
    settings = new SettingsVO();
}

现在,如果您想保存设置,您只需执行
settings.someSetting = "newValue";
settingsSO.data.settings = settings;
settingsSO.flush();

此解决方案适用于任何浏览器中的 AIR 和 Flex。较新的浏览器会在清除 cookie 时删除这些数据,因此请注意这一点。

关于apache-flex - 如何在 Adob​​e Flex/AIR 应用程序中存储用户首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6335671/

相关文章:

apache-flex - 闪存日志 API

apache-flex - DataGrid itemEditor 中的下拉列表中的滚动条不起作用

actionscript - Adobe Air Native Process 仅适用于 Flash 环境,但部署后出现错误 #3219

air - 通过 URL 打开 Native AIR 应用程序?

mobile - 可以替代缓慢且不兼容 HTML5 的 Adob​​e Air WebKit v6531.9 (Webview) 吗?

actionscript-3 - 是否可以使用鼠标向下和向上事件来模拟鼠标点击?

apache-flex - Flash:带有引用表的 AMF3?

actionscript-3 - AIR 将服务器托管的 swf 加载到同一沙箱中

javascript - Adobe Air 中的 Sqlite,数据类型不匹配

actionscript-3 - 从 Flex 中的字符串中转义(解码)HTML 字符