0
我試圖讓一個對象具有一些在構造函數中初始化的不可變屬性,並且在啓動後將不能更改。那些屬性只有getter方法。因爲我希望這個對象可以與其他類共享,所以我將它保存到名爲saveIt()
的SharedObject類中。SharedObject不安全地保存數據?
在iOS上運行應用程序時(我沒有在Android上測試它),所有工作都很好,除非如果我完全關閉應用程序並重新打開應用程序,那些沒有setter的屬性會丟失。該代碼是如下:
var rooms:ArrayCollection = saveData.read("rooms") as ArrayCollection;
if (!roomExists) {
var room:Room;
room = new Room(myID, myName, maxRoomSize);
room.name = rm.name;
room.timestamp = new Date();
room.joinUrl = rm.joinUrl;
room.attendeeUrl = rm.attendeeUrl;
room.attendees = conferenceParameters.metadata.hasOwnProperty("attendees") ? conferenceParameters.metadata["attendees"] : null;
rooms.addItem(room);
}
saveIt.save("rooms", rooms);
是否在保存任何事情後刷新了** SharedObject? –
我刷新SharedObject然後再讀取它,如果應用程序保持活動狀態,或者沒有setter的屬性將丟失,那麼可以。它可以通過設置兩組屬性來複制,其中一組與另一組屬性不同。具有setter的屬性將始終存在,而其他屬性則不會。 –