2011-06-23 61 views
0

我目前正在製作一個應用程序,將控制和使用光傳感器。因此,我需要環境照明變化時的數據(通過勒克斯的光線傳感器)。我該如何做到這一點,以便當用戶退出我的應用程序時,它能夠繼續在後臺運行,並且能夠收集數據並對系統進行更改?實現傳感器的Android服務?

+0

服務的全部要點是一種活動已經關閉後即使要長時間運行。只要不在活動退出時停止服務 – Spidy

回答

1

如果您沒有在OnPause()上取消您的傳感器管理器中的傳感器註冊,那麼您的傳感器事件監聽器事件仍應該定期觸發。然後,您應該能夠從那裏完成您需要的任何功能。但是,如果用戶停止了該程序,並且系統發現它已暫時處於非活動狀態並且其系統內存不足,那麼android操作系統可能會認爲不需要該任務。我確信有一些標誌或什麼東西被叫來阻止這種情況發生,但我不能告訴你我的頭頂。

如果您希望在用戶啓動後運行所有後臺服務,您還可以考慮編寫後臺服務。

+0

http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-practices –

0
+0

儘管此鏈接可能會回答問題,但最好包含答案的重要部分[這裏](http://meta.stackexchange.com/a/8259)並提供鏈接供參考。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – bummi