ciao, rispondo ora perchè ho avuto da fare. Allora sono riuscito a risolvere il problema impostando nel manifest, nel tag che riguarda ogni activity questo blocco:
codice:
android:launchMode="singleInstance"
a quanto ho letto in rete ogni volta che si arriva a questo punto :
codice:
Intent myIntent = newIntent(activityB.this,activityC.class);
myIntent.putExtra("firstKeyName","FirstKeyValue");
myIntent.putExtra("secondKeyName","SecondKeyValue");
startActivity(myIntent);
invece di crearmi una nuova instanza dell'activityC, verifiche se nello stack è già presente un'istanza e eventualmente l'avvia. Quindi se si verifica ciò al posto di iniziare dal metodo onCreate() inizia da:
codice:
protected void onNewIntent (Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
Log.i(TAG, "onNewIntent");
processExtraData();
}
ora al di la del fatto che tutto funziona, la cosa che non riesco a capire è cosa fa esattemente onNewIntent(Intent intent) in particolare il parametro intent a chi si riferisce? e setIntent(intent) cosa fa?