Problemas de sincronização do iCloud Key-Value-Store (NSUbiquitousKeyValueStoreDidChangeExternallyNotification não chamado)

estou escrevendo um pequeno jogo universal para iOS. o recorde será sincronizado entre dispositivos por meio de um armazenamento de chave / valor do iCloud.

obtendo a pontuação mais recente:

func retrieveHighestScore() -> Int64 {
        let iCloudScore: Int64 = NSUbiquitousKeyValueStore.defaultStore().longLongForKey(KeyValueKeyClassification.KeyHighscore.toRaw())
        let localScore: Int64 = Int64(NSUserDefaults.standardUserDefaults().integerForKey(KeyValueKeyClassification.KeyHighscore.toRaw()))
        var result: Int64 = 0

        if localScore > iCloudScore {
            storeNewHighscore(localScore)
            result = localScore
        } else {
            storeNewHighscore(iCloudScore)
            result = iCloudScore
        }
        return result
    }

armazenando um novo recorde

func storeNewHighscore(newScore: Int64) {
        NSUbiquitousKeyValueStore.defaultStore().setLongLong(newScore, forKey: KeyValueKeyClassification.KeyHighscore.toRaw())
        NSUserDefaults.standardUserDefaults().setInteger(Int(newScore), forKey: KeyValueKeyClassification.KeyHighscore.toRaw())
        if NSUbiquitousKeyValueStore.defaultStore().synchronize() {
            println("Synched Successfully")
        }
    }

por alguma razão, no entanto, as pontuações não são sincronizadas.

Sem errossem falhassem valores nulos

eu sempre obtenho a pontuação mais alta do dispositivo atual, nunca o alcançado em outros.

poderia o motivo estar no itunesconnect ou há algo errado com o meu código? Estou usando um ipad e um iphone para teste, ambos conectados à minha conta no icloud.

Estou me registrando para as alterações como esta:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Override point for customization after application launch.

        NSNotificationCenter.defaultCenter().addObserver(self, selector: "icloudKeyValueChanged", name: NSUbiquitousKeyValueStoreDidChangeExternallyNotification, object: nil)
        if NSUbiquitousKeyValueStore.defaultStore().synchronize() {
            println("initial Synched Successfully")
        }

        return true
    }

mas a função 'icloudKeyValueChanged' nunca é chamada.

Os recursos do iCloud estão todos ok, como parece:

questionAnswers(2)

yourAnswerToTheQuestion