推送Broadcast給聊天界面activity傳遞聊天信息功能實現

實現聊天功能模塊,服務器推送一條聊天消息發送到我們的app上,但是不能直接將數據傳遞到當前的activity上,因爲該BroadcastReceiver不是當前的activity註冊的,是app啓動時註冊的,看山去這個推送廣播與聊天activity毫無關聯性,也就無法互相傳遞數據。那麼我們該怎麼實現這個功能呢?

實現該功能的方法就是再寫一個BroadcastReceiver的子類,讓聊天activity去註冊這個子類,並且在子類中添加接口,讓activity去實現這個接口,然後推送廣播發送帶有消息數據的廣播發送到這個子類上,子類通過activity傳進來的接口回調,activity就獲得了這條消息數據。


這樣做產生了一個問題,推送sendBroadcast後調用onReceive().acitivty註冊了一次Broadcast,這樣就會調用兩次onReceive()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章