Objective-C O cache do NSUserDefaults impede que outro aplicativo leia com precisão as alterações
Eu tenho um aplicativo que define preferências. Ele usa esses prefs, e o mesmo acontece com outro aplicativo. Quando eu uso o seguinte código no segundo aplicativo, ele lê as preferências corretamente uma 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"]];
Em chamadas subseqüentes do mesmo código, eu recebo o [settings integerForKey: @ "matName"] é sempre o valor que foi lido pela primeira vez.
No primeiro aplicativo, estou usando o Controlador de Padrões Compartilhados do Usuário para ler / gravar as preferências. Não tenho certeza se isso é importante para esse problema ou não.
Como posso forçar o segundo aplicativo a sempre obter os valores mais recentes?