C'è qualche altra ragione per cui l'Intent che viene passato onStartCommand(Intent, int, int)
sarebbe NULL oltre al sistema che riavvia il servizio tramite un flag come START_STICKY
?
Inoltre, quando il servizio viene riavviato dal sistema, il Intent.getAction()
metodo restituisce NULL ... a volte. L'intento non è solo NULLgetAction()
Ho chiesto anche qui ma non ho ancora ricevuto risposta.
AGGIORNAMENTO : Dopo aver chattato con Mark Murphy, mi ha suggerito di tornare START_REDELIVER_INTENT
nella onStartCommand()
richiamata nel mio servizio invece di in START_STICKY
modo che l'intero intento venga inviato dopo un riavvio.
Inizialmente non l'ho fatto perché ero preoccupato che se il servizio stava tentando di fare qualcosa, nel mezzo di quel qualcosa il servizio è stato riavviato ... riconoscerà che ha iniziato a fare quel qualcosa? Immagino sia logica di cui dovrò essere responsabile :)
intent
è null
su onStartCommand()
, è causata da qualche altro errore che è visibile in LogCat prima di questo. Non so perché, ma è quello che ho osservato ed è abbastanza facile trascurarlo.
NullPointerException
qualche parte in una delle Attività. Successivamente è stato un altro errore. Ma in entrambi i casi la mia traccia dello stack ha mostrato che il mio servizio, che era in esecuzione mentre si verificava questo errore, intent
era null
come nel tuo caso. Stavo pensando da molto tempo a cosa non andava, quando ho deciso di scorrere verso l'alto la traccia dello stack ed è apparso che da qualche parte in alto avevo il mio vero errore. Dopo aver risolto questo, anche quello con null
intent
scomparso.