重置后,IOS App中的AIR SharedObject消失

时间:2013-02-05 11:40:26

标签: ios air shared-objects

我在AIR中使用SharedObject来存储IOS App中的一些数据。

当我将UIApplicationExitsOnSuspend设置为true时,共享对象工作正常,这意味着如果我从Fast App Switcher中删除它(通过双击home按钮显示Fast App Switcher),然后再次运行应用程序,SharedObject与我的数据是还在那儿。

但是如果我将UIApplicationExitsOnSuspend设置为false并从Fast App Switcher中删除应用程序然后再次运行它,那么我的SharedObject为空。

问题是我需要使用UIApplicationExitsOnSuspend false,但我还需要一直存储SharedObject,即使它在后台运行也是如此。

谢谢。


UPD:一些代码

这是项目主类的构造函数:

public static var so:SharedObject;
public function Main():void
{

so = SharedObject.getLocal("MyApp");
}

然后我像这样使用它

if (!Main.so.data.names) {
Main.so.data.names = [];
}
Main.so.data.names.push(someNewName);

当应用程序在后台工作时,它工作正常,所有更改都会保存。但如果我在Fast App Switcher中杀了app,然后再次运行,调试器显示Main.so.data不包含任何东西

1 个答案:

答案 0 :(得分:0)

我在AIR for iOS上遇到了同样的问题。 使用EncryptedLocalStore而不是ShareObject似乎可以解决问题。

以下是如何使用EncryptedLocalStore保存和检索数组的链接。请注意,该链接有拼写错误 - “加密本地存储”,并将其更改为“加密本地存储”'相反 - Is it possible to store an Array into an EncryptedLocalStore item? AIR