2011-01-26 7 views
7

Il dominio dell'applicazione in [NSUserDefaults standardUserDefaults] è stato sottoposto a backup quando l'utente sincronizza il proprio dispositivo? In caso contrario, puoi suggerire un'alternativa corretta e corretta?Backup di NSUserDefaults e sincronizzazione di iPhone

Apple fa riferimento a "Preferenze dell'applicazione" nella sua documentazione, ad esempio per gli acquisti in-app. Capisco, forse erroneamente, che stanno facendo riferimento a NSUserDefaults qui anche se la terminologia non sembra corrispondere perfettamente.

Gli acquisti in-app, che ho intenzione di registrare in [NSUserDefaults standardUserDefaults], devono essere sottoposti a backup nel mio progetto.

Ringraziando gentilmente in anticipo.

risposta

10

Sì. NSUserDefaults utilizza un file PLIST come backing store, che viene sottoposto a backup in ogni sincronizzazione. Vedere http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/UserDefaults/Concepts/DefaultsDomains.html per ulteriori informazioni.

Se si desidera vedere da soli, è possibile controllare ~/Libreria/Application Support/MobileSync/Backup /. Crea un backup non crittografato di un dispositivo con solo la tua app e visualizza i file nell'editor PLIST.

+1

Grazie per il tuo post. Sono paranoico su questo, quindi controllerò ~/Backup. – SK9

+0

se si vuole essere pazzo sicuro, memorizzare questi dati su un database al di fuori del dispositivo. in questo modo se non riescono a eseguire il backup del proprio dispositivo, possono eseguire il ripristino dal server. I valori di default sono sottoposti a backup (puoi testarlo eseguendo il backup, quindi ripristinandoli dal backup anche su un dispositivo), ma se vuoi coprire tutte le tue basi, questo è un altro modo per andare –

+0

Sono felice di non assumermi la responsabilità per l'utente di fare il backup in questa occasione, solo finché darò loro la possibilità di farlo. Questo è abbastanza buono per i miei scopi. (Pubblicare un'altra domanda in pochi minuti ...) – SK9