In the activity you want to receive unread messages from the chat:
private val mMessageReceiver: BroadcastReceiver = object : BroadcastReceiver() {
// update unread message numbers
override fun onReceive(context: Context?, intent: Intent) {
val unreadMessage = intent.getIntExtra("message", 0)
}
}
In the activity’s onCreate()
method:
LocalBroadcastManager.getInstance(requireContext()).registerReceiver(
mMessageReceiver,
IntentFilter("chat-message"))
// Custom action name, the event will notify the receiver
In the activity you can get chat messages:
// Event happens
val intent = Intent("chat-message")
intent.putExtra("message", 1)
LocalBroadcastManager.getInstance(this).sendBroadcast(intent)