приложение для iPhone работает в средстве моделирования, но не на устройстве (NSUserDefaults)

У меня есть некоторый код, который работает прекрасный в средстве моделирования, но я не могу выполнить его на реальном устройстве iPhone, и я не получаю причину:

- (void)loadView {
 self.title = @"Optionen";
 [super loadView];
}

- (void)viewDidLoad {    
 [super viewDidLoad];

 NSMutableArray *strArray = [NSMutableArray new];
 NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

 if ([[prefs stringForKey:@"facebook"] length] > 0 ) {
  [strArray addObject: [prefs stringForKey:@"facebook"]];
 }
 else {
  [strArray addObject:@"YES"];
 } 


 if ([[prefs stringForKey:@"twitter"] length] > 0 ) {
  [strArray addObject: [prefs stringForKey:@"twitter"]];
 }
 else {
  [strArray addObject:@"YES"];
 }


 if ([[prefs stringForKey:@"pm"] length] > 0 ) {
  [strArray addObject: [prefs stringForKey:@"pm"]];
 }
 else {
  [strArray addObject:@"YES"];
 }

 [facebookSwitch setOn:[[strArray objectAtIndex:0] boolValue]];
 [twitterSwitch setOn:[[strArray objectAtIndex:1] boolValue]];
 [pmSwitch setOn:[[strArray objectAtIndex:2] boolValue]]; 

 [strArray release];
}

-(IBAction) change:(id) sender {
 NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

 if (facebookSwitch.on) {
  [prefs setObject:@"YES" forKey:@"facebook"];  
 }
 else {
  [prefs setObject:@"NO" forKey:@"facebook"];
 }


 if (twitterSwitch.on) {
  [prefs setObject:@"YES" forKey:@"twitter"];  
 }
 else {
  [prefs setObject:@"NO" forKey:@"twitter"];
 }


 if (pmSwitch.on) {
  [prefs setObject:@"YES" forKey:@"pm"];  
 }
 else {
  [prefs setObject:@"NO" forKey:@"pm"];
 }

 [prefs synchronize];
}

Действительно ли это - проблема с моим использованием NSUserDefaults?

Спасибо за помощь.

1
задан Grt 19 October 2010 в 20:52
поделиться