Domanda

Ho un widget che può pop-up di piccole finestre di dialogo quando si fa clic. Queste finestre di dialogo sono visualizzati per un'attività chiamata RemoteActivity in SingleInstance launchMode. In una di queste finestre di dialogo, c'è un pulsante per avviare la principale MainActivity app, che ha il launchMode standard.

Tuttavia, quando si fa clic su questo pulsante, e startActivity () chiamato, MainActivity non è avviato, anche se posso vedere il corrispondente. "Avvio attività: Intento {...}" in logcat

Se ho impostato la launchMode di RemoteActivity per MainActivity poi di serie viene lanciato, ma questo non è quello che voglio, RemoteActivity è semplicemente un'estensione del widget, io non voglio che impilare con qualsiasi altra attività.

Ho provato anche con FLAG_ACTIVITY_NEW_TASK ma non ha aiutato, e non dovrebbe essere necessario comunque secondo la documentazione :

A "SingleInstance" l'attività, sulla D'altra parte, permette nessun altro Le attività da parte del suo compito. E 'l'unica attività nel compito. Se inizia un'altra attività, che attività è assegnata a un diverso compito - come se FLAG_ACTIVITY_NEW_TASK era nell'intento.

Come faccio a lanciare la mia attività principale?

UPDATE / ERRATA:

Il MainActivity è effettivamente lanciata, ma solo se non è già parte di un compito. Se io lancio MainActivity normalmente attraverso il programma di avvio, e premere il tasto Indietro per uscire, poi RemoteActivity fa lancio MainActivity.

Ma se, invece di premere Back, premo Home per lasciare MainActivity, allora RemoteActivity non può lanciare MainActivity, anche se gli appare intento a logcat.

sto testando questo su Froyo.

Qualche idea di cosa sta succedendo?

È stato utile?

Soluzione 2

Ho trovato il problema: questo comportamento si verifica solo quando si chiama finitura () prima startActivity () in RemoteActivity. Se io chiamo startActivity () prima di finitura () allora funziona bene se MainActivity è già parte di un'attività esistente oppure no.

Vai a capire ...

Altri suggerimenti

Forse il noHistory bandiera lavorerà per quello siete alla ricerca di?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top