El almacenamiento en caché de Objective-C NSUserDefaults evita que otra aplicación lea con precisión los cambios

Tengo una aplicación que establece preferencias. Utiliza esas preferencias, y también lo hace otra aplicación. Cuando uso el siguiente código en la segunda aplicación, lee las preferencias correctamente una vez.

    NSUserDefaults* settings = [NSUserDefaults standardUserDefaults];
    [settings addSuiteNamed:@"com.WVS.Wrestling-Tools"];
    [settings synchronize]; // this just a shot in the dark.. didn't work

    [self setScoreboardIndex:[settings integerForKey:@"matName"]];

En las llamadas subsiguientes del mismo código, obtengo que la [configuración integerForKey: @ "matName"] es siempre el valor que se leyó por primera vez.

En la primera aplicación, estoy usando el controlador de valores predeterminados de usuario compartido para leer / escribir las preferencias. No estoy seguro si eso importa o no a este problema.

¿Cómo puedo forzar a la segunda aplicación a obtener siempre los valores más recientes?

Respuestas a la pregunta(1)

Su respuesta a la pregunta