我正在開發一個Android應用程序,它運行一系列異步傳感器掃描,例如獲取附近藍牙設備的MAC地址列表,獲取手機(GPS)的當前位置以及錄製音頻樣本週圍的噪音。 每次掃描完成後,我想要一個服務來處理將收集的數據發送到web服務(使用http和REST)。IntentService工作隊列狀態
我面臨的問題是我應該實現自己的自定義服務還是使用IntentServce處理多個請求(使用'startService()'發送的意向)上傳數據,因爲我想100%確定找到的數據最終會發送到Web服務(如果Internet連接可用)。
如果Android決定殺死我的IntnetService或用戶強制殺死它,同時仍然處理它的請求的工作隊列,我會失去掛起的請求隊列嗎?即我是否需要保存工作隊列的狀態(並因此被迫在不使用IntentService的情況下自己實現服務)?
非常感謝這個快速而有用的答案! 我知道我沒有閱讀服務的文檔,因爲我沒有意識到START_REDELIVER_INTENT,並且它正在被IntentService使用。 –