NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #4482 most downloaded on pub.dev
Integrate the Chat SDK to enjoy the global IM services with high reliability, ultra-low latency, and high concurrency.
Last release 3 months ago
02 Jul 2026
Release timing varies
gaps range from 8 days to 9 months
Most releases are documented
notes for 13 of 18 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
30 releases · first in 2022
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Added the ChatRoomManager.joinChatRoom(String, bool, String) method;
ChatRoomManager.joinChatRoom(String, bool, String) method;ChatRoomEventHandler.onMemberJoinedFromChatRoom(String, String, String) callback;GroupManager.fetchMemberAttributes was incorrect on the Android platform.Added the ChatGroupManager.isMemberInGroupMuteList method to check whether the current user is in the group mute list.
ChatGroupManager.isMemberInGroupMuteList method to check whether the current user is in the group mute list.ChatRoomManager.isMemberInChatRoomMuteList method to check whether the current user is in the chat room mute list.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Optimized the success rate of server connection under weak network conditions.
Marked ChatManager#fetchConversation and ChatManager#fetchPinnedConversations deprecated. Use ChatManager#fetchConversationsByOptions instead.
ChatManager#deleteAllMessageAndConversation method to uni-directionally clear all conversations and messages in them. Meanwhile, you can choose whether to clear the chat history on the server.MessageSearchScope during keyword-based search.
MessageSearchScope: Includes three message search scopes: the message content, message extension information, and both.ChatManager#loadMessagesWithKeyword: Searches for messages in all conversations by search scope.conversation#loadMessagesWithKeyword: Searches for messages in a conversation by search scope.ConversationFetchOptions: Includes options for filtering conversations retrieved from the server. You can only retrieve pinned conversations or marked conversations by setting the options.ChatManager#addRemoteAndLocalConversationsMark: Marks a conversation.ChatManager#deleteRemoteAndLocalConversationsMark: Unmarks a conversation.ChatManager#fetchConversationsByOptions: Gets conversations from the server by setting ConversationFetchOptions.Conversation#marks: Gets all marks of a local conversation.ChatMultiDevicesEvent#CONVERSATION_UPDATE_MARK: Conversation mark update event in a multi-device login scenario. If a user adds or removes a conversation mark on one device, this event is received on other devices of the user.ChatMessage#isBroadcast property to indicate whether the message is a broadcast message sent via a RESTful API to all chat rooms under an app.ChatMessage#deliverOnlineOnly property to set whether the message is delivered only when the recipient(s) is/are online. If this property is set to true, the message is discarded when the recipient is offline.GroupManager#fetchJoinedGroupCount method to allow the current user to retrieve the total number of joined groups.CHATROOM_OWNER_NOT_ALLOW_LEAVE that occurs when the chat room owner leaves the chat room. If ChatOptions#isChatRoomOwnerLeaveAllowed is set to false during SDK initialization, the chat room is not allowed to leave the chat room. In this case, error 706 is reported if the chat room owner calls the leaveChatRoom method to leave the chat room.ChatOptions#useReplacedMessageContents property to determine whether the server returns the adjusted text message to the sender if the message content is replaced during text moderation.ChatManager#pinMessage: Pins a message.ChatManager#unpinMessage: Unpins a message.ChatManager#fetchPinnedMessages: Gets the list of pinned messages in a conversation from the server.Conversation#loadPinnedMessages: Gets the list of pinned messages in a local conversation.MessagePinInfo: Includes the operator that pins or unpins the message and the operation time.ChatMessage#pinInfo: Includes the message pinning information.ChatEventHandler#onMessagePinChanged: Occurs when the message pinning status changed. When a message is pinned or unpinned in a group or chat room, all members in the group or chat room receive this event.ChatOptions#enableEmptyConversation property to set whether to include empty conversations in the retrieved list of local conversations. This property is set during SDK initialization.applicant and decliner parameters to the ChatGroupEventHandler#onRequestToJoinDeclinedFromGroup event to respectively indicate the user that applies to join the group and the user that declines the join request.ChatOptions#messagesReceiveCallbackIncludeSend property to set whether to return the successfully sent message in the ChatEventHandler#onMessagesReceived event.ChatEventHandler#onMessageContentChanged event if the message is modified via the RESTful API.ChatManager#fetchConversation and ChatManager#fetchPinnedConversations deprecated. Use ChatManager#fetchConversationsByOptions instead.ChatManager#markAllConversationsAsRead method by marking all conversations read more efficiently.ChatClient#loginWithAgoraToken method deprecated. Use the ChatClient#loginWithToken method instead.NetworkOnMainThreadException exception catching during a network request.PrivacyInfo.xcprivacy.from property is missing from the body of the message pulled from the server by an offline user that gets online.leaveChatRoom method.ChatManager#updateMessage method is called frequently for SDK initialization in multi-thread scenarios.Nothing published for this version
Adds the fetchConversation method to get the conversation list from the server. Marks the ChatManager#getConversationsFromServer method deprecated.
MessageType.COMBINE: The combined message type.CombineMessageBody: The combined message body class.ChatManager#fetchCombineMessageDetail: Gets the list of original messages included in a combined message from the server.ChatManager#modifyMessage: Modifies a text message that is sent.ChatEventHandler#onMessageContentChanged: Occurs when a sent message is modified. The message recipient receives this callback.ChatTextMessageBody#lastModifyTime: Indicates when the content of a sent message is modified last time.ChatTextMessageBody#lastModifyOperatorId: Indicates the user ID of user that modifies a sent message last time.ChatTextMessageBody#modifyCount: Indicates the number of times a sent message is modified.ChatManager#pinConversation: Pins or unpins a conversation.ChatManager#fetchPinnedConversations: Gets the list of pinned conversations from the server.ChatConversation#isPinned: Specifies whether the conversation is pinned.ChatConversation#pinnedTime: Specifies when the conversation is pinned.fetchConversation method to get the conversation list from the server. Marks the ChatManager#getConversationsFromServer method deprecated.FetchMessageOptions as the parameter configuration class for pulling historical messages from the server.ChatManager#fetchHistoryMessagesByOption method to get historical messages of a conversation from the server according to FetchMessageOptions, the parameter configuration class for pulling historical messages.direction parameter to ChatManager#fetchHistoryMessages to allow you to retrieve historical messages from the server according to the message search direction.ChatConversation#deleteMessagesWithTs method to delete messages sent or received in a certain period from the local database.ChatMessage#deliverOnlineOnly field to specify whether the message is delivered only when the recipient(s) is/are online.ChatGroupManager#setMemberAttributes: Sets custom attributes of a group member.ChatGroupManager#fetchMemberAttributes and GroupManager#fetchMembersAttributes: Gets custom attributes of group members.ChatGroupEventHandler#onAttributesChangedOfGroupMember: Occurs when a custom attribute is changed for a group member.reason parameter to ChatRoomEventHandler#onRemovedFromChatRoom so that the member removed from the chat room knows the removal reason.ConnectionEventHandler#onAppActiveNumberReachLimit callback that occurs when the number of daily active users (DAU) or monthly active users (MAU) for the app has reached the upper limit.IMultiDeviceDelegate#OnRoamDeleteMultiDevicesEvent callback that occurs when historical messages in a conversation are deleted from the server on one device. This event is received by other devices.ChatClient#fetchLoggedInDevices: Gets the list of online login devices of a user.ChatClient#kickDevice: Kicks a user out of the app on a device.ChatClient#kickAllDevices: Kicks a user out of the app on all devices.ChatMultiDeviceEventHandler#onRemoteMessagesRemoved callback that occurs when historical messages in a conversation are deleted from the server on one device. This event is received by other devices.ReactionOperate:
Add: Adds a Reaction.Remove: Removes a Reaction.ChatRoomEventHandler#onSpecificationChanged callback that occurs when details of a chat room are changed.ChatManager#searchMsgFromDB method to include custom messages in the message retrieval result.ConnectionEventHandler#onConnected and ConnectionEventHandler#onDisconnected cannot be received on the iOS system.null to the key of an attribute causes the app to crash.ChatManager#getThreadConversation error.ChatMessage#chatThread error.ChatRoomEventHandler#onSpecificationChanged is not triggered when the chat room announcement changes.ChatThreadManager#fetchChatThreadMembers is called.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix: Callback methods executing multiple times due to multiple initialization of android.
Upgrades the native platforms iOS and Android that the Flutter platform depends on to v1.1.0.
iOS and Android that the Flutter platform depends on to v1.1.0.ChatManager#fetchConversationListFromServer method to allow users to get the conversation list from the server with pagination.ChatMessage#chatroomMessagePriority attribute to implement the chat room message priority function to ensure that high-priority messages are dealt with first.Changed the message sending result callback from ChatMessage#setMessageStatusCallBack to ChatManager#addMessageEvent.
ChatManager#deleteMessagesBeforeTimestamp execution failures.
Fixed Android sending video message url error.
The inconsistency of messages in the memory and the database due to a call to the updateMessage method in rare scenarios.
updateMessage method in rare scenarios.ChatGroupEventHandler#onDestroyedFromGroup callback that occurs when a group is destroyed does not work on the Android platform.ChatGroupEventHandler#onAutoAcceptInvitationFromGroup callback that occurs when a user's group invitation is accepted automatically does not work on the Android platform.Removed some redundant logs of the SDK.
Removed some redundant logs of the SDK.
Marked AddXXXManagerListener methods (like addChatManagerListener and addContactManagerListener) as deprecated.
customEventHandler attribute in ChatClient to allow you to set custom listeners to receive the data sent from the Android or iOS device to the Flutter.PushTemplate method in `PushManager to support custom push templates.isDisabled attribute in Group to to indicate whether a group is disabled. This attribute needs to be set by developers at the server side. This attribute is returned when you call the fetchGroupInfoFromServer method to get group details.displayName attribute in PushConfigs to allow you to check the nickname displayed in your push notifications.Marked AddXXXManagerListener methods (like addChatManagerListener and addContactManagerListener) as deprecated.
Modified API references.
Nothing published for this version
The callbacks for messaging thread were not triggered on iOS.
Nothing published for this version
This is the first release for the Agora Chat Flutter SDK, which enables you to add real-time chatting functionalities to an Android or iOS app. Major
This is the first release for the Agora Chat Flutter SDK, which enables you to add real-time chatting functionalities to an Android or iOS app. Major features include the following:
For the complete feature list, see Product Overview.
Agora Chat is charged on a MAU (Monthly Active Users) basis. For details, see Pricing for Agora Chat and Pricing Plan Details.
Refer to the following documentations to enable Agora Chat and use the Chat SDK to implement real-time chatting functionalities in your app:
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →