Releases: sendbird/sendbird-chat-sdk-android
Releases · sendbird/sendbird-chat-sdk-android
v4.21.1
Features
SDK now supports Custom Report Categories
configured through Sendbird Dashboard, which takes effect after restarting the app. Previous report categories will remain until app restart.
- Added
getReportCategoryInfoList()
- Added
ReportCategoryInfo
- Added
report(ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Added
reportUser(User, ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Added
reportMessage(BaseMessage, ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
ReportCategory
- Deprecated
report(ReportCategory, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
reportUser(User, ReportCategory, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
reportMessage(BaseMessage, ReportCategory, String?, CompletionHandler?)
method inBaseChannel
Improvements
- Removed the
shadow plugin
and switched to referencing dependencies directly.- The
shadow plugin
was previously used to relocate package names of dependencies to avoid conflicts and resolve dependency management issues. - The affected libraries are
gson
andokhttp
. - This change was made because
okhttp
andgson
are widely used in Android apps. Shadowing these libraries duplicates their code in the final app, increasing app size. By removing shadowing, we aim to help developers optimize performance and reduce storage requirements.
- The
v4.21.0
DEPRECATED
### Features
SDK now supports Custom Report Categories
configured through Sendbird Dashboard, which takes effect after restarting the app. Previous report categories will remain until app restart.
- Added
getReportCategoryInfoList()
- Added
ReportCategoryInfo
- Added
report(ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Added
reportUser(User, ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Added
reportMessage(BaseMessage, ReportCategoryInfo, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
ReportCategory
- Deprecated
report(ReportCategory, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
reportUser(User, ReportCategory, String?, CompletionHandler?)
method inBaseChannel
- Deprecated
reportMessage(BaseMessage, ReportCategory, String?, CompletionHandler?)
method inBaseChannel
Improvements
- Removed the
shadow plugin
and switched to referencing dependencies directly.- The
shadow plugin
was previously used to relocate package names of dependencies to avoid conflicts and resolve dependency management issues. - The affected libraries are
gson
andokhttp
. - This change was made because
okhttp
andgson
are widely used in Android apps. Shadowing these libraries duplicates their code in the final app, increasing app size. By removing shadowing, we aim to help developers optimize performance and reduce storage requirements.
- The
v4.20.1
Improvements
- Fixed a bug where
Reaction.count
resets to 0 whenReaction.sampledUserIds
is empty
v4.20.0
Features
- Added new properties in
Reaction
to support more users
class Reaction {
// A list of sampled userIds that have reacted to this Reaction.
val sampledUserIds: List<String>
// A count of the number of users who have reacted to this.
var count: Long
// A flag indicating whether the current user has reacted to this.
var hasCurrentUserReacted: Boolean
}
v4.19.4
Improvements
- Improved speed of
GroupChannelCollection.loadMore()
when theGroupChannelListQuery
is set with filters.
v4.19.3
Improvements
- Fixed a crash issue due to lack of proguard rule for
PublicSuffixDatabase
in the okhttp library.
v4.19.2
Improvements
- Fixed a bug where non-operator's message affects the last message and the unread message count for exclusive channels
- Fixed a bug where a channel gets unexpectedly unhidden upon receiving a new message.
- Added
useDnsFallback
toInitParams
which enables a fallback where a second DNS lookup is attempted using a public DNS when the initial lookup using the system DNS fails. Its default value isfalse
.
v4.19.1
Improvements
- Improved speed of
MessageCollection.initialize()
when there are lots of reply messages in the channel.
v4.19.0
Features
- Added interfaces for
MessageForm
to work with Sendbird dashboard andForm
interfaces have been deprecated.- Added
submitMessageForm(CompletionHandler?)
method inBaseMessage
class - Added
messageForm
property inBaseMessage
class - Added
MessageForm
class - Added
MessageFormItem
class - Added
MessageFormItem.Style
class - Added
MessageFormItem.LayoutType
enum - Added
MessageFormItem.ResultCount
enum - Deprecated
submitForm(Form, CompletionHandler)
method inBaseMessage
class - Deprecated
forms
property inBaseMessage
class - Deprecated
Form
class and interfaces - Deprecated
FormField
class and interfaces - Deprecated
FormFieldAnswer
class and interfaces
- Added
- Added
TemplateContainerOptions
inTemplateMessageData
- Added
SendbirdChat.getUnreadItemCount(GroupChannelUnreadItemCountParams, GroupChannelGetUnreadItemCountHandler?)
method to support filtering unread message count by custom types- Added
GroupChannelUnreadItemCountParams
class - Deprecated existing
SendbirdChat.getUnreadItemCount(Collection<UnreadItemKey>, GroupChannelGetUnreadItemCountHandler)
method
- Added
Improvements
- Fixed an occasional
ConcurrentModificationException
crash fromBaseMessageCollection.getPendingMessages
.
v4.18.0
Features
Support pinned message
in OpenChannel
- Added
pinnedMessageIds
property toBaseChannel
- Added
lastPinnedMessage
property toBaseChannel
- Added
pinMessage
method toBaseChannel
- Added
unpinMessage
method toBaseChannel
- Added
onPinnedMessageUpdated
toOpenChannelHandler
- Expanded
SendbirdChat.createPinnedMessageListQuery
to use inOpenChannel