title: Why is NSUserDefaultsDidChangeNotification received twice?
body: <p>I have this code in my AppDelegate</p>
  
  <pre><code> - (void)applicationDidBecomeActive:(UIApplication *)application {
       NSLog(@"+applicationDidBecomeActive");
       NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
       [center addObserver:self selector:@selector(defaultsChanged:)  name:NSUserDefaultsDidChangeNotification object:nil];
       NSLog(@"-applicationDidBecomeActive");
   }
  
   - (void)defaultsChanged:(NSNotification *)notification {
       NSLog(@"+defaultsChanged");
       // Get the user defaults
       // NSUserDefaults *defaults = (NSUserDefaults *)[notification object];
       NSLog(@"-defaultsChanged");
   }
  </code></pre>
  
  <p><code>applicationDidBecomeActive</code> is fired only once, when the application is launched.</p>
  
  <p>If defaults are not changed, <code>defaultsChanged</code> is not fired.</p>
  
  <p>But, if defaults are changed <code>defaultsChanged</code> is fired twice, one after another.</p>
  
  <p>I can not understand why. Can anyone help me? Thank you.</p>