Domanda

Sto lavorando su un'applicazione Core Data (per iPhone 3.0, anche se non credo che fa davvero la differenza qui) e sarà necessario spedire con un database "starter" pieno di dati. Con SQLite, vorrei solo avere l'applicazione copiare il database popolato dal bundle nella cartella Documenti App al primo avvio e quindi caricare il database - tutte le informazioni sarebbe venuto con esso e saremmo pronti ad andare. Ma con Core Data, io non sono davvero sicuro se posso solo salvare l'archivio permanente al fascio App e copiarlo prima di avere Core Data iniziare a fare la sua cosa. Sarà questo causare problemi? C'è un po 'di dati iniziali, in modo da non voglio per confezionarlo in un altro formato e devono analizzare attraverso di essa.

È stato utile?

Soluzione

Sì, è possibile copiare più di un archivio permanente pre-popolato.

Ho creato un'applicazione per Mac che popola un negozio. Esso viene copiato nel mio fagotto e alla partenza, copiato nella directory Documenti. Questo funziona bene. Mi è stato detto l'esempio Core Data Libri è stata sviluppata allo stesso modo.

Si prega di notare che questo non significa che si può semplicemente copiare qualsiasi file vecchio SQLite. Deve essere un archivio permanente Core Data, anche se credo che si capisce che in base alla tua domanda.

Altri suggerimenti

In realtà c'è un trucco: è necessario nominare il file che si sta per copiare con estensione diversa da ".sqlite", ".bin" farà. In caso contrario, Xcode cambierà il contenuto del file quando lo copia in app durante la fase di costruzione e non verrà caricato.

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