2011-01-04 12 views
15

Vorrei sapere se il mio oggetto Contesto dato proviene da Attività, Servizio o Applicazione. O in altre parole se il mio codice è in esecuzione in background o in primo piano. (In primo piano intendo Codice attività e le discussioni che sono state realizzata da Activity.)Come distinguere se un dato oggetto di contesto è un contesto di attività o di servizio?

+2

Questo probabilmente non è affatto ciò che vuoi. Cosa stai cercando di fare e perché non sapresti dove è in esecuzione il tuo codice. E anche se non lo facessi, perché importa? Sembra che tu abbia dei seri difetti di progettazione. Dovresti anche notare che è perfettamente normale che il codice attività venga eseguito nello "sfondo" – Falmarri

+0

È perché a volte voglio bloccare il trasferimento dei dati quando è in background, invocato dal servizio. Ma potresti avere ragione che dovrei pensare ad un'altra soluzione. –

risposta

42

si dovrebbe essere in grado di verificare se un oggetto è una classe specifica utilizzando "instanceof"

if (context instanceof Activity) { 
    // handle activity case 
} else if (context instanceof Service){ 
    // handle service case 
} 
Problemi correlati