在android中,一個服務用於在後臺運行。但使用報警管理器也可以實現同樣的功能。警報接收器可以做與您在服務中所做的相同的事情。那麼在android中需要什麼服務?服務和在android中使用鬧鐘管理器的區別
回答
其實這些是兩個完全不同的東西。可以使用Alarm Manager定期使用服務執行一些任務。但是,服務也可以用於例如將一些繁重的工作從UI線程中移出(從其他服務器下載數據)或者在前臺服務的情況下,連續進行一些工作(MP3播放器)。
您可以在Styling Android上獲得關於如何使用服務的一些解釋(有些建議考慮AlarmManager)。
通常,當您不再需要用戶界面時,將使用服務來處理邏輯。例如,我想要使用的服務每15分鐘檢查一次社交網站的更新情況。該服務具有處理更新的邏輯。但是誰將每15分鐘啓動一次服務?這就是使用AlarmManager
的地方。它會每隔15分鐘定期啓動我的服務一次,以便服務可以執行其邏輯並在作業完成後自行停止,並且我的應用程序不會耗盡電池電量。
確切地說,這就是我所說的。 「但是誰將每15分鐘就開始一次服務?」。爲什麼你需要每15分鐘啓動一次服務。您可以直接在廣播接收器的onReceiver()函數中編寫檢查更新的代碼。 – Ashwin 2012-04-01 16:55:34
我不明白你在說什麼。請詳細解釋。 – Ashwin 2012-04-02 04:56:39
廣播接收器在廣播匹配意圖時被觸發。即使在社交網絡服務器中存在更新的情況下,您的手機中的服務器也不會有意向傳播。只能在移動設備內完成。在這種情況下br是無用的。你只能通過連接到服務器(從服務)來了解更新 – Akhil 2012-04-02 05:08:31
那麼兩者都是完全不同的thigh。
AlarmManager
該類用於在特定的時間間隔後執行某些事件,或者它可以處於常規時間間隔。事件也可以是服務的執行。 AlarmManager允許您安排您的應用程序在未來的某個時間點運行。
而在Service
的情況下,它是一個後臺進程,它不具有/需要UI。服務不是一個安全的過程,或者服務不是一個線程。服務是一種應用程序組件,它表示應用程序希望在不與用戶交互的情況下執行長時間運行的操作,或爲其他應用程序提供使用的功能
- 1. 使用鬧鐘管理器在Android中設置鬧鐘
- 2. android的鬧鐘管理器
- 3. Android鬧鐘管理器:OnRecive和PendingIntent服務不會被調用
- 4. 使用android管理器設置鬧鐘?
- 5. 如何使用android鬧鐘管理器設置多個鬧鐘
- 6. 在Android中取消鬧鐘管理器
- 7. 使用Android中的鬧鐘管理器安排任務
- 8. 定時器任務VS Android服務中的鬧鐘管理器用法
- 9. 關於鬧鐘管理器在android
- 10. 在android中使用廣播recevire與鬧鐘管理器
- 11. 在android中使用鬧鐘管理器面對通知問題
- 12. Android鬧鐘管理器在特定時間運行任務
- 13. 爲什麼使用鬧鐘管理器重複任務在android上不準確?
- 14. 鬧鐘管理器不適用於我
- 15. 鬧鐘管理器不起作用
- 16. 如何在android中添加日期到鬧鐘管理器
- 17. 鬧鐘管理器在Android中不工作
- 18. 如何在android中設置鬧鐘管理器一致?
- 19. 使用android鬧鐘
- 20. 使用鬧鐘音量級別爲android
- 21. Android:我的鬧鐘管理器廣播接收器不工作
- 22. 無法創建鬧鐘管理器
- 23. 鬧鐘管理器沒有觸發
- 24. 鬧鐘管理器意外停止
- 25. 鬧鐘管理器不停止播放
- 26. Android Studios鬧鐘管理器應用程序已關閉
- 27. 創建鬧鐘鬧鐘Android
- 28. Android的鬧鐘管理器錯誤的時期
- 29. 具有靈活時間表的Android鬧鐘管理器?
- 30. 如何在android中安排重複鬧鐘和一次鬧鐘
您可以立即在onreceive()函數中設置警報在單獨的線程中完成繁重的工作。 – Ashwin 2012-04-01 16:57:37
說實話,我從來沒有試過這樣做。但是,服務在沒有AlarmManager的情況下用於許多其他任務。例如,我使用服務從其他服務器下載數據並將其提供給兩個不同的活動。我希望能夠達到相同的數據並從兩者中重新加載下載。說實話,我想不出一個很好的替代服務在這裏。 AlarmManager在這樣的任務中完全沒用 – 2012-04-01 18:45:51