Domanda

Io sono innamorato con i dati di base in pochi ultimi mesi, e lo usò per salvare i dati nella mia app incluse le impostazioni utente. funziona benissimo, ma ho paura che avrò problemi con gli aggiornamenti futuri.

so che 3 modi per memorizzare le preferenze nella mia app - 1. dati fondamentali. 2. NSUserDefaults. 3. utilizzando la configurazione in impostazione dei componenti.

amore per capire i pro ei contro di questo si avvicina.

grazie Shani

È stato utile?

Soluzione

Modifica Nota: Il mio link precedente, Preferenze di implementazione di applicazioni , è rotto. dovrebbe applicare ancora il resto di questa risposta. Tuttavia, è ora possibile anche memorizzare i dati in iCloud in un modo che è simile a (ma separarsi da) NSUserDefaults.

Si può fare riferimento alla propria guida di Apple: Informazioni sulle preferenze e impostazioni

In primo luogo, è possibile memorizzare le impostazioni tuttavia si desidera: E 'solo i dati degli utenti. La scelta tra NSUserDefaults e Core Data è proprio tra API, dove il primo è stato progettato specificamente per le preferenze dell'utente manico. Ma si potrebbe (tecnicamente) usare i file INI, se si voleva assolutamente (ma non lo fai!). Quindi ci sono più di 3 modi per farlo.

In secondo luogo, NSUserDefaults e il "built-in" impostazioni del componente sono davvero la stessa cosa. Utilizzando l'applicazione impostazioni sarà ancora memorizzare le preferenze in NSUserDefaults cui si accede nella tua app con quel API.

Il motivo per cui si potrebbe non si desidera utilizzare il built-in impostazioni app sarebbe: E 'ingombrante per gli utenti di modificare tali impostazioni. Se si dispone di impostazioni che gli utenti potrebbero voler cambiare di frequente, si potrebbe desiderare di farlo all'interno della vostra applicazione (ad esempio trasformando la musica on / off, cambiando nome del giocatore). Inoltre, poiché si ha il pieno controllo sul proprio app, è possibile avere un'interfaccia grafica più flessibile rispetto a quello Apple fornisce in Settings.app

Ma è davvero una questione di grafica, non come impostazioni vengono memorizzate.

Come per l'utilizzo di Core Data o NSUserDefaults ... bene, come ho detto, uno è progettato specificamente per le preferenze dell'utente, l'altra per i dati utente basati su righe. NSUserDefaults permette di avere impostazioni di default, è banale per aggiungere nuove impostazioni e supporta impostazioni di sistema integrato. E 'anche abbastanza semplice: basta carica un elenco di proprietà. Core Data d'altra parte richiede l'intero archivio permanente e gestito stack di contesto dell'oggetto.

Per riassumere: Usa NSUserDefaults per le impostazioni e scegliere tra il built-in impostazioni app e avere il vostro pannello di controllo proprio in base alla frequenza impostazioni devono essere modificate e le vostre esigenze specifiche

.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top