2010-04-14 5 views
27

c'è un modo per visualizzare l'output della console poiché stiamo eseguendo un'app per iphone sul dispositivo? Se non direttamente, c'è un'app sull'App Store che ti permette di visualizzare il log dopo che l'App ha finito di funzionare?obiettivo c iphone: possiamo visualizzare il dispositivo di registrazione della console

+0

Secondo il blog dello sviluppatore ha usato le funzioni di asl per accedere ai registri, qui http://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man3/asl.3.html – progrmr

+2

As di iOS 7.0, l'app sandbox ora proibisce l'accesso a qualsiasi registro che non sia l'app: [tramite questa risposta Overflow stack] (http://stackoverflow.com/a/19045750/774) (anche osservata personalmente quando si utilizza on- app del dispositivo per visualizzare i registri del dispositivo) – cbowns

risposta

3

se si dispone di un account per sviluppatori iPhone a pagamento, è possibile utilizzare la finestra dell'agenda elettronica in xcode per visualizzare i registri della console e delle app sui dispositivi.

+0

oh no questo non è il problema ... Sto sviluppando un'applicazione basata sulla posizione, per la quale ho bisogno di correre con il mio iphone. È un po 'macchinoso da correre con il mio macbook in una mano e iphone nell'altra. Qualsiasi "su dispositivo log visualizzatore"? – user315067

+1

potresti rendere la tua app NSLog i dati che vuoi vedere e visualizzarli in seguito utilizzando l'organizer. Penso che non ci sia modo di vederlo dal vivo sul dispositivo a meno che tu non aggiunga il tuo ui per stamparlo. –

+0

** - 1 Non risponde alla domanda ** L'OP sta chiedendo di visualizzare il contenuto della console _on-dispositivo_; questo approccio utilizza un computer di sviluppo con Xcode. –

5
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); 

NSString *documentsDirectory = [paths objectAtIndex:0]; 

NSString *fileName =[NSString stringWithFormat:@"%@.log",[NSDate date]]; 

NSString *logFilePath = [documentsDirectory stringByAppendingPathComponent:fileName]; 

freopen([logFilePath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr); 

Basta aggiungere questo blocco di codice in applicationdidFinishLaunchingWithOptionslaunchOptions metodo nel file app delegato, e creerà un file di log in App Directory documento su iPhone che registra tutti gli eventi del registro console. È necessario importare questo file da iTunes per vedere tutti gli eventi della console.

Non dimenticate di impostare "Applicazione supporta la condivisione di file iTunes" a "SI" nella vostra plist

Goto - itunes -Quando ur dispositivo collegato-Apps - selezionare ur App - in Augument Documento u otterrà ur file di allora salva nel tuo disco

+0

grazie, ma non riesco a trovare la directory del documento dell'app, puoi aiutarmi a trovare il file .log da importare da iTunes – prabhu

+0

Sembra che con iTunes 12 non possiamo più importare file dalla directory dei documenti. Ora tutto è iCloud. In che modo gli utenti possono ottenere questo file di registro? –

+0

Funziona bene con Xcode 7.3 e iTunes 12.3.3.17 – goelectric

21

Puoi anche vedere nella finestra Dispositivi.

Andare in xcode -> Finestra -> Dispositivi.

Selezionare il dispositivo e aprire la console. enter image description here

+2

** - 1 Non risponde alla domanda. ** OP chiede di visualizzare il contenuto della console _on-device_; questa risposta utilizza un computer di sviluppo con Xcode. –

+0

Dov'è questo in Xcode 6? – ToddB

+1

in Xcode 6 -> Finestra -> Dispositivi -> Seleziona il dispositivo -> una piccola freccia/\ in basso a sinistra, Fai clic su questo e si aprirà la console del dispositivo. – MujtabaFR