Flusso?
Se ho capito bene:
1) Cliccando sul Widget, e trascinandolo sullo schermo, richiama l'Activity Menu;
Quante activity hai? Chi richiama la Menu?
2) Questa setta i parametri eselezionati e, al tasto BACK, si chiude e richiama il Service;
Il tasto BACK del dispositivo? Meglio bloccarlo e mettere un tasto nel Menu.
3) Il Service resta in attesa di una telefonata (si aggiorna ogni secondo: StartService(Me));
Ogni secondo, se ho capito bene, consuma moltissima batteria. Se fai così perché dev'essere sempre pronto ad intercettare le chiamate, non è il metodo giusto, se ne occupa un intent.
4) Cliccato sopra il Widget, rientra nel Menu per modificare i settaggi;
5) Cliccando nel Menu (dove riposrta le chiamate ricevute), si apre una listview delle chiamate non risposte)
6) Settando i tasti volume dallo schermo (o dal Menu), cambia l'immagine del Widget (Questi si trovano nella Main attiva... anche se, come vedi, a fine Activity_Create della Main, go messo un Activity.Finish, e la cosa è strana
);
Questa non mi è chiara: dallo schermo (o dal Menu): che intendi dire con: "dallo schermo
"?
7) Rimosso dallo schermo l'App dovrebbe terminare (sempre codice sopra).