天天看點

在Android中實作Service動态更新UI界面(Service與主程式Activity之間的資料互動或控制)

案例:通過service向遠端伺服器發送請求,根據伺服器傳回的結果動态更新主程式ui界面,主程式可實時關閉或重新開機服務。

1、在主程式activity中注冊一個broadcastreceiver,用于接收service釋出的廣播。

2、在service中注冊一個broadcastreceiver,用于接收主程式釋出的廣播。

1、主程式釋出廣播,service接收讀取資料。

如:主程式activity可釋出廣播,用于向背景service傳遞資料或控制資訊,如停止service指令。

2、service釋出廣播,主程式activity接收更新ui。

如:service背景讀取網絡資料,用于向activity傳遞資料或控制界面資訊,更新ui。

如上實作雙向廣播注冊和接收來實作service和主程式activity之間的資料互動或控制。

1、在主程式的activity中聲明一個static變量handler,裡面寫好回調函數

2、在service裡面,調用這個handler,傳輸資料。

繼續閱讀