使用廣播接收器或處理程序從服務我知道服務是在主線程上運行,所以爲什麼我們使用的廣播接收器或處理程序更新的Android UI。我們可以直接更新UI,而無需在android中使用處理程序或廣播接收器。我很困惑,請澄清一下這個討論。UI更新而不在android系統
0
A
回答
0
更新UI,你需要有對視圖的參考。您無法獲得對服務中視圖的引用。但是你可以做到這一點。這就是爲什麼你必須在服務中執行Activity來更新UI之前(因爲服務本身沒有UI)。
您可以將對用戶界面的引用傳遞到服務中,但由於活動和服務生命週期可能會不同,並且可能導致內存泄漏,並且最終可能會導致服務鎖定活動的死鎖被GCed,並且活動鎖定服務。
2
答:創建活動,註冊您的廣播接收器等瞧!
詳情: 在你一個問題,你是指服務和處理程序,它可以在另一個線程啓動。 - >處理程序用於進程間通信,當在UI線程之外運行的服務應該與UI線程交談時。 - >服務是爲長期處理案例而設計的。
在你一個問題,你是指廣播接收機,它可以從服務中啓動,或從活動。 - >如果您想用某些系統(和其他自定義)事件更新UI,您將始終需要廣播接收器。 - >如果它只是捕獲事件並更新一個字段,這不是一個漫長的過程。但是,如果是關於捕獲和讀取數據庫,或訪問Web服務(非常異步操作),這是一個漫長的過程。
相關問題
- 1. 更新android系統
- 2. 更新不是在android系統
- 3. Android操作系統更新系統
- 4. Android系統更新事件
- 5. Android UI不更新
- 6. 更新UI而不凍結
- 7. 解析JSON,而不在android系統
- 8. 獲取框而不是在android系統
- 9. Android:計算並更新TextView而不掛UI UI
- 10. Android animate()不更新UI
- 11. Android更新UI
- 12. 更新UI Android
- 13. 打開Android的系統更新頁面
- 14. Android:從應用更新操作系統
- 15. Laravel更新系統
- 16. TextViews不在android UI中更新
- 17. android - TextView不會在UI中更新
- 18. Android有時不會在UI中更新
- 19. 在Android中更新UI
- 20. Android Facebook更新UI
- 21. Multrithreading UI更新android
- 22. 懸而未決R.id在android系統
- 23. 黑屏,而從符在android系統
- 24. UIProgressView只更新值而不是UI
- 25. 更新ListView而不凍結UI
- 26. 在android系統不工作
- 27. 處理程序不刷新android系統
- 28. android UI開發中的網格系統
- 29. vuforia和Unity3d新的UI系統
- 30. 在android系統
regullar services是什麼意思?任何服務的例子都在主線程上運行? –
@chetanmekha,任何不是特別的服務。任何示例,從「服務」擴展。 –