What's difference between GroupChannelCollection and ChannelEventHandler when handling channel events?

I see there are two ways to listener channel events. What’s difference between them?

For example, if I update a channel name, they onChannelChanged/onChannelsUpdated method will be triggered at same time?

What are their best scenarios?

Hello @XINHAOR, and welcome to the Sendbird community!

Group channel collections are only used with local caching. It allows your application to save the channel and channel list to the device for offline viewing. The events allow you to update the collection or remove the channels from the collection.

The channel event handler allows you to do something with the event that is emitted by the websocket, such as updating a conversation view when a new message is being received or displaying a typing status indicator.

Thanks for your reply.

What is the usage scenario of Group channel collection events? Because I found duplicate events between them.

If I want to update conversations list view, which one should I use?