Domanda

Sto cercando di capire come creare il mio proprio albero di directory e accedervi dalla mia applicazione.

sto facendo una sorta di programma di apprendimento e voglio creare una struttura di directory simile a questo:

-MyLessonsDirectory
--LessonDirectory_1
---Step_1
---Step_2
---Step_3
--LessonDirectory_2
---Step_1
---Step_2
---Step_3
.
.
and so on

In ogni -directory "Step" avrò contenuti specifici per quella fase della lezione. Il contenuto viene aggiunto da me durante lo sviluppo. Quindi, io non voglio creare la struttura e il contenuto dall'interno dell'applicazione, basta accedervi e leggere il contenuto delle directory. Se posso creare questo tipo di struttura e utilizzarlo sarà molto facile creare un bel design che lo rende facile creare nuove lezioni nella mia app.

Quello che non riesco a capire è dove dovrei creare queste directory del file-struttura in Xcode e qual è il percorso di queste directory dalla mia applicazione.

È stato utile?

Soluzione

Su iPhone, si ha accesso solo alle applicazioni proprie directory. Il posto migliore per mettere le directory di pratica nella cartella Documenti nella cartella app.

Questa ...

NSString *dp=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];

... si dà il percorso della cartella di directory che è quindi possibile mano fuori al NSFileManager.

Se si desidera visualizzare la struttura di directory visivamente, eseguire l'applicazione sul simulatore e guardare in

~/Library/Application Support/iPhone Simulator/User/Applications

L'applicazione sarà in una delle cartelle con il nome senza senso UUID. È possibile visualizzare i file e le directory lì nel Finder.

Vorrei aggiungere che l'iPhone ha già la maggior parte delle directory si potrebbe praticamente bisogno. Hai preferenze, cache, tmp, documenti ecc tutti a posto.

Edit01:

  

Quello che voglio fare è quello di aggiungere contenuti   manualmente prima di iniziare la   applicazione. Poi, all'interno del   applicazione farò leggere il contenuto I   aggiunto prima di avviare l'applicazione.

Non è possibile modificare la struttura delle directory di default e si ha assolutamente alcun controllo su come vengono installati l'applicazione o le sue directory. applicazioni per iPhone non hanno file di supporto esterno di qualsiasi tipo. Ogni cosa è dentro il bundle app.

Tuttavia, il fascio applicazione è in realtà solo una directory in modo da poter riempire le cose al suo interno e copiarli fuori in una delle directory di default per la prima volta viene eseguito l'app. Potete scrivere tutto quello che vuoi nella directory di documenti.

Altri suggerimenti

Si desidera guardare NSFileManager per creare directory:

NSFileManager *fm = [NSFileManager defaultManager];
NSError *error;
BOOL result = [fm createDirectoryAtPath:@"path....." withIntermediateDirectories:YES attributes:nil error:&error];
if(result){
   NSLog(@"success!");
} else {
   NSLog(@"error: %@",error);
}

Per quanto riguarda il dove creare le directory, si può mettere a sostegno ~ / Application / - nome-- della tua App Questo è dove è necessario memorizzare i dati dell'app se l'utente non richiede l'accesso ad essa. In caso contrario, si dovrebbe lasciare che l'utente decidere dove salvarlo.

- (NSString *)applicationSupportDirectory {

       NSArray *paths = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
       NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : NSTemporaryDirectory();
       return [basePath stringByAppendingPathComponent:@"MyApplication"];
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top