'didReceiveMemoryWarning'알림을 받으면 계속 유지해야하는 앱에 데이터 구조가 있습니다. 데이터는 사용자가 앱 (게임)을 사용하여 수행 한 모든 동작에 대한 일종의 로그입니다.낮은 메모리에 iphone 응용 프로그램 데이터 저장
데이터가 너무 작아서 (가능한 수백만 KB 미만) 올바른 해결책 인 것처럼 보입니다.
두 가지 가능성 중 첫 번째는 개체를 보관하고 이러한 개체가 NSCoding 프로토콜을 지원하도록하는 것입니다. 이것이 올바른 길을 선택하는 것이 확실하지 않습니다.
두 번째 옵션은 CoreData와 NSManagedObjectModel 및 NSPersistentStoreCoordinator를 사용하는 것 같습니다. 이 객체를 저장하는 좋은 방법입니까? 아니면 잔인한가요? (Apple의 'Recipes'샘플 앱을 사용하고 있습니다.)
내 개체는 결국 NSString, NSNumber, NSInteger 및 기타 간단한 유형을 보유하는 사용자 지정 개체 유형입니다. 내가 가지고있는 데이터 유형의 일부
샘플 :
// this the base object I need to start with to persist
@interface MyDataObject : NSObject
{
MyScore *aScore;
// Contains an object of type 'MyAction'
NSMutableArray *allActions;
}
@interface MyScore : NSObject
{
NSInteger currentScore;
NSDate lastUpdated;
}
@interface MyAction
{
NSNumber *actionId;
NSString *description
MyUser *associatedUser;
}
@interface MyUser
{
NSNumber *id;
NSString *name;
NSString *email;
}
사용자는 다른 게임의 무리를 재생할 수 있으며, 각 게임에 대한, 나는 그들이이 만든 이동 무엇의 활동 로그를 가지고있다. 사용자는 게임을하는 동안 각 게임에서 지금까지 만든 동작을 볼 수 있으며 활성 동작 인 & 사이를 전환하여 과거 동작도 검토 할 수 있습니다.
데이터를 사용할 대상을 게시하는 것이 적절합니다. 데이터 액세스/검색 방법이 더 나은 솔루션에 영향을 미칩니다. – Jacob
이 원본 정보를 포함하도록 수정했습니다. –