2010-02-01 13 views
6

Sto cercando di seguire le istruzioni this page per creare un file di traccia. Riesco a vedere il file in File Explorer in DDMS e posso caricarlo sul mio PC ma è lungo zero byte.file di traccia Android creato, ma a lungo zero byte

Dei suggerimenti quanto a quello che potrebbe essere sbagliato, per favore?

+0

Due cose mi viene in mente: (1) Si sta utilizzando la classe Debug correttamente? Non possiamo dire senza almeno uno snippet di codice. (2) potrebbero esserci ancora handle di file aperti; provare a disattivare il tracciamento, smontare la scheda SD, e la lettura del file tramite archiviazione di massa USB –

+0

Il codice di debug che ho è (1) 'import android.os.Debug;' (2) nel onCreate il principale di attività: 'Debug.startMethodTracing ("mymap"); '(dopo la chiamata super.onCreate) (3) in OnDestroy' Debug.stopMethodTracing(); 'come la dichiarazione finale (4) nel manifesto' ' e 'android: debuggable =" true "'. Dopo aver eseguito l'App, il file di traccia appare sulla scheda SD. Al telefono Astro File Manager conferma che ha zero byte, così come Windows Explorer quando collego il telefono al mio PC. Come posso smontare la scheda SD dall'emulatore? – prepbgg

+0

Secondo la pagina developer.android.com sul Traceview l'applicazione deve chiamare stopMethodTracing() per provocare la traccia da scrivere nel file di traccia. Ho ragione nel pensare che premendo il pulsante Home dovrei causare la distruzione dell'attività principale della mia app e quindi stopMethodTracing dovrebbe essere chiamato dall'istruzione che ho inserito in onDestroy? – prepbgg

risposta

7

Il problema sembra essere stato il fatto che la chiamata stopMethodTracing() che avevo inserito nel metodo onDestroy() (come suggerito nello Dev Guide) non ha interrotto la traccia anche se avevo provato tre diversi modi per terminare l'attività ... ruotando lo schermo, premendo il tasto Home e utilizzando Taskiller per terminare l'applicazione.

Spostando lo stopMethodTracing() altrove ora ho una traccia con i dati in esso!

(L'indizio vitale è che ho notato che è stato LogCat traccia di Reporting avviato ma TRACE mai riferito FERMA.)

+0

Per quanto mi riguarda, inizialmente pensavo che fosse anche questo il mio problema, ma ho scoperto che nel mio caso il mio codice non chiamava mai stopMethodTracing. – nmr

Problemi correlati