มีเหตุผลอื่นใดที่ Intent ที่ถูกส่งไปonStartCommand(Intent, int, int)
จะเป็น NULL นอกจากระบบจะเริ่มบริการใหม่ผ่านแฟล็กเช่นSTART_STICKY
?
นอกจากนี้เมื่อบริการเริ่มต้นใหม่โดยระบบIntent.getAction()
เมธอดจะคืนค่า NULL ... เจตนาไม่ได้เป็นเพียงโมฆะgetAction()
ฉันถามที่นี่ด้วย แต่ยังไม่ได้รับคำตอบ
UPDATE : หลังจากคุยกับ Mark Murphy เขาแนะนำให้ฉันกลับมาSTART_REDELIVER_INTENT
ในการonStartCommand()
ติดต่อกลับในบริการของฉันแทนที่จะSTART_STICKY
ส่งเจตนาทั้งหมดหลังจากเริ่มต้นใหม่
ฉันไม่ได้ทำสิ่งนี้ในตอนแรกเพราะฉันกังวลว่าหากบริการกำลังพยายามทำอะไรบางอย่างระหว่างนั้นมีการเริ่มบริการใหม่ ... ฉันเดาว่านั่นเป็นตรรกะที่ฉันจะต้องรับผิดชอบ :)