Autore Topic: è possibile lanciare un activity da un service?  (Letto 615 volte)

Offline cimmero

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
è possibile lanciare un activity da un service?
« il: 23 Aprile 2012, 20:00:44 CEST »
0
ciao, ho un problema, devo lanciare un activity da un service, ho usato questo codice:

public class ControllerService extends Service {
...
...
public int onStartCommand(Intent intent, int flags, int startId) {
...
Intent second = new Intent(this, LogActivity.class);
startActivity(second);

oppure:
Intent second = new Intent(ControllerService.this, LogActivity.class);
startActivity(second);

ma da errore


qualcuno può aiutarmi???

Offline DarnellNajanReed

  • Utente normale
  • ***
  • Post: 359
  • Respect: +49
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One, Acer Iconia A500/501, Asus Transformer Prime, Galaxy ACE, Galaxy S Plus, Galaxy S Advance P, Galaxy Tab 2 7.0, Google Nexus 7
  • Play Store ID:
    Luigi Notaro
  • Sistema operativo:
    OS X 10.8.3
Re:è possibile lanciare un activity da un service?
« Risposta #1 il: 23 Aprile 2012, 21:28:17 CEST »
0
Se riporti l'errore magari è più facile aiutarti  O:-)

Ad ogni modo su Android è generalmente considerato bad practice lanciare un'Activity da un Service: l'utente è per i fatti suoi a fare la qualunque e si vede comparire una schermata senza sapere perchè e da dove. Meglio visualizzare una notifica e, da questa, lanciare l'Activity richiesta.

Offline emaborsa

  • Utente normale
  • ***
  • Post: 274
  • Java Developer
  • Respect: +33
    • Google+
    • emaborsa
    • Mostra profilo
    • www.emaborsa.com
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Linux 10 - Win8.1 - Android 4.1.2
Re:è possibile lanciare un activity da un service?
« Risposta #2 il: 04 Maggio 2012, 09:40:39 CEST »
0
prova con:

Codice (Java): [Seleziona]
Intent second = new Intent(getApplicationContext(), LogActivity.class);
startActivity(second);

Vedrai che funzionerà :)