2016-03-12 20 views
17

Come è possibile trovare rapidamente la cartella documenti (nel mac) di un'app quando utilizzo il simulatore? Quando ho bisogno di esplorare la cartella del documento durante la simulazione dell'App ora uso una variabile dell'App per trovare il percorso della cartella del documento e leggo il percorso durante il debug (usando una variabile) ma penso che non sia la soluzione migliore.Document folder iOS Simulator

+0

Se si sta sviluppando solo un'app, c'è solo una cartella oltre ~ Librerie/Supporto applicazioni/iPhoneSimulator (Devo controllare il percorso). –

+0

il percorso sembra non esiste .. – Lorenzo

+0

Prova '~/Libreria/Applicazione \ Supporto/iPhoneSimulator' – L3viathan

risposta

9

Aprite il Terminal.app ed eseguire:

xcrun simctl get_app_container booted [app identifier] 

È possibile anche impostare un alias per passare alla directory, come:

alias cdmyapp='cd $(xcrun simctl get_app_container booted com.mycompany.myapp)' 
+2

Mi piace l'idea dell'alias! Ma questa è solo la cartella del pacchetto, non la cartella Documenti. – nickcheng

+0

Questo è fantastico. Posso sapere dove posso ottenere l'elenco di altre funzioni simili (ad esempio get_app_container)? Sto cercando di recuperare la directory dei documenti dalla riga di comando. Qualsiasi aiuto? –

+0

Questo restituisce il pacchetto .app non la directory documenti/dati come la domanda chiede –

54

Set e ha colpito un punto di interruzione in app, e scrivere la seguente nella console di Xcode (accanto alle variabili View):

po NSHomeDirectory() 

Poi nel Finder colpito shift + CMD + G, pasta il percorso restituito sopra senza le virgolette e premi invio.

+0

Questo genera un errore del compilatore per me; regolandolo su 'var homeDir = NSHomeDirecotry; print (homeDir) '(o esaminando il valore di homeDir in un punto di interruzione) funziona comunque. –

+4

@AlexHall Questa risposta dice di scrivere questo comando ** nella console ** mentre è in pausa in corrispondenza di un punto di interruzione. Anch'io l'ho letto male in un primo momento e ho pensato che intendesse inserire questo comando nel codice. – BigHeadCreations

2

Ho 2 soluzione

  • Simpholders o libero e open source alternativa OpenSim
  • Un semplice script che si apre la finestra del Finder con l'applicazione recentemente lanciato sul simulatore iOS

deviceId = $ (xcrun elenco dispositivi simctl | grep Booted | sed -n 's/^. ([A-F0-9] {8} - ([A-F0-9] {4} -) {3} [A-F0-9] {12}). $/\ 1/p ') applicationFolder = ~/Library/Developer/CoreSimulator/Devices/$ deviceId/dati/Contenitori/dati/applicazioni/ applicationFolder = $ applicationFolder $ (ls -Art $ applicationFolder | -n coda 1) aperto $ applicationFolder