Ho provato di tutto e leggere tutti gli argomenti, ma non riesco a scoprire perché NSUbiquitousKeyValueStore non viene memorizzato su iCloud.NSUbiquitousKeyValueStore non sincronizzato con iCloud
• Creato uno specifico ID App
• Enabled iCloud per questo ID App
• Creato Provisioning Profilo
• Attivare iCloud sul Progetto
• Setup diritti alle Valore chiave : $ (TeamIdentifierPrefix) $ (CFBundleIdentifier)
• Acceso iCloud Drive sul dispositivo
Ma NSUbiquitousKeyValueStore sta salvando solo localmente. Quando reinstalla l'app, non riceve informazioni da iCloud.
Questo è il modo che sto cercando:
NSUbiquitousKeyValueStore *cloudStore = [NSUbiquitousKeyValueStore defaultStore];
if ([[cloudStore stringForKey:@"testString"] length] == 0) {
NSLog(@"Nothing in iCloud - setting a value...");
[cloudStore setString:@"I'm live in iCloud!" forKey:@"testString"];
[cloudStore synchronize];
[[NSUbiquitousKeyValueStore defaultStore] synchronize];
} else {
NSString *result = [cloudStore stringForKey:@"testString"];
NSLog(@"Found something in iCloud - here it is: %@", result);
}
[self registerForiCloudNotificatons];
Se cancello l'applicazione o provare un nuovo dispositivo non trova nulla sul iCloud.
Così ho provato questo per scoprire se iCloud sta lavorando:
NSURL *ubiq = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
if (ubiq) {
NSLog(@"iCloud at %@", ubiq);
} else {
NSLog(@"No iCloud access, %@", ubiq);
}
E questo ritorno sempre "no iCloud accesso" e io non riesco a capire perché. Qualunque cosa faccia URLForUbiquityContainerIdentifier restituisce sempre nil.
Sono in esecuzione su dispositivi iOS 8 con iCloud abilitato.
mi sto perdendo qualcosa?
Grazie!
Dopo giorni in cui mi sono trovato in difficoltà, ho effettuato una semplice disconnessione da iCloud e di nuovo l'accesso. Ora funziona tutto ... URLForUbiquityContainerIdentifier restituisce ancora nil, quindi non posso controllare se iCloud è attivo o meno, ma almeno è la sincronizzazione e il salvataggio dei dati nel cloud. – tomDev