Я использую NSUserDefaults для сохранения NSMutableArray и NSMutableDictionery как
NSUserDefaults *nsdefaults = [NSUserDefaults standardUserDefaults];
NSMutableDictionary *appDetail = [[NSMutableDictionary alloc]initWithDictionary:[sbjasonObj objectWithString:result]];
if ([appDetail objectForKey:KStores]) {
NSArray *stores = [appDetail objectForKey:KStores];
NSLog(@"%@",stores);
[nsdefaults setObject:stores forKey:KStores];
}
NSString *colorString = [appDetail objectForKey:KColorTheme];
[nsdefaults setObject:colorString forKey:KColorTheme];
NSString *lookBookURL = [appDetail objectForKey:kLookBook];
NSLog(@"look_book%@",lookBookURL);
[nsdefaults setObject:lookBookURL forKey:kLookBook];
[nsdefaults setObject:appDetail forKey:kGetAppDetail];//using same key to save in sandbox
[nsdefaults synchronize];
[appDetail release];
и извлечение этих данных как
shopsLocations = [[NSArray alloc] initWithArray:[[NSUserDefaults standardUserDefaults]
objectForKey:KStores]];
NSLog(@"shopsLocations: %@",shopsLocations);
Это дает мне "магазиныРасположение :(
) "означает значение 0. Также, когда я пытаюсь получить" appDetail ", он также дает нулевые ключи и значения.
Мой вопрос
1. Могу ли я сохранить массив и словарь в NSUserDefaults?
2. Когда данные в NSUserDefaults сбрасываются?
3. Как получить данные из NSUserDefaults?
Заранее спасибо.