Używam NSUbiquitousKeyValueStore
do synchronizowania niektórych danych preferencji z usługą iCloud. Zauważyłem, że jeśli użytkownik wyłączy element "Document & Data" w iCloud w "Setting App", NSUbiquitousKeyValueStore
nie może zsynchronizować swoich danych z iCloud. Tak, chcę najpierw sprawdzić, czy ta opcja jest włączona on.After googlowania, Znalazłem ten fragment kodu:Jak programowo wykryć, czy usługa iCloud jest włączona na urządzeniu użytkownika, gdy używa się tylko NSUbiquitousKeyValueStore?
NSURL *ubiq = [[NSFileManager defaultManager]
URLForUbiquityContainerIdentifier:nil];
NSLog(@"url=%@",ubiq);
if (!ubiq) {
UIAlertView *av = [[UIAlertView alloc] initWithTitle:nil message:@"Please enable iCloud in Setting app" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[av show];
return;
}
Co chcę wiedzieć, czy jest to jedyny sposób, aby wykryć, nawet jeśli po prostu użyć NSUbiquitousKeyValueStore
(nie przechowywania dokumentów iCloud). Czy istnieje lepsza alternatywa?
Twoja odpowiedź wydaje się być w konflikcie z dokumentami, które mówią: "Unikaj używania tej klasy do przechowywania danych, które są istotne dla zachowania aplikacji w trybie offline [...]". Już napisałem o tym [pytanie] (http://stackoverflow.com/q/23662856/251760). Czy byłbyś w stanie na to odpowiedzieć? – Jonathan
Oznacza to, że nie należy polegać na tym sklepie, który jest lokalną prawdą, ale raczej prostym kanałem komunikacji synchronizacji między urządzeniami. – Julien
Dzięki! Zrobiłem twoją odpowiedź w [odpowiedź] (http://stackoverflow.com/a/26556553/251760) na moje pytanie, mam nadzieję, że ci to odpowiada. (Jeśli wolisz sam odpowiedzieć, z chęcią usunąłbym moje.) – Jonathan