Skip to content

Releases: sendbird/sendbird-chat-sdk-android

v4.21.1

21 Nov 06:26
28c8718
Compare
Choose a tag to compare

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 in BaseChannel
  • Added reportUser(User, ReportCategoryInfo, String?, CompletionHandler?) method in BaseChannel
  • Added reportMessage(BaseMessage, ReportCategoryInfo, String?, CompletionHandler?) method in BaseChannel
  • Deprecated ReportCategory
  • Deprecated report(ReportCategory, String?, CompletionHandler?) method in BaseChannel
  • Deprecated reportUser(User, ReportCategory, String?, CompletionHandler?) method in BaseChannel
  • Deprecated reportMessage(BaseMessage, ReportCategory, String?, CompletionHandler?) method in BaseChannel

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 and okhttp.
    • This change was made because okhttp and gson 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.

v4.21.0

21 Nov 01:43
c718928
Compare
Choose a tag to compare

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 in BaseChannel
  • Added reportUser(User, ReportCategoryInfo, String?, CompletionHandler?) method in BaseChannel
  • Added reportMessage(BaseMessage, ReportCategoryInfo, String?, CompletionHandler?) method in BaseChannel
  • Deprecated ReportCategory
  • Deprecated report(ReportCategory, String?, CompletionHandler?) method in BaseChannel
  • Deprecated reportUser(User, ReportCategory, String?, CompletionHandler?) method in BaseChannel
  • Deprecated reportMessage(BaseMessage, ReportCategory, String?, CompletionHandler?) method in BaseChannel

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 and okhttp.
    • This change was made because okhttp and gson 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.

v4.20.1

19 Nov 06:43
a46bd9e
Compare
Choose a tag to compare

Improvements

  • Fixed a bug where Reaction.count resets to 0 when Reaction.sampledUserIds is empty

v4.20.0

07 Nov 01:33
e1629a8
Compare
Choose a tag to compare

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

24 Oct 07:20
5659dfd
Compare
Choose a tag to compare

Improvements

  • Improved speed of GroupChannelCollection.loadMore() when the GroupChannelListQuery is set with filters.

v4.19.3

11 Oct 08:23
a5dbe7b
Compare
Choose a tag to compare

Improvements

  • Fixed a crash issue due to lack of proguard rule for PublicSuffixDatabase in the okhttp library.

v4.19.2

26 Sep 11:58
081cd95
Compare
Choose a tag to compare

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 to InitParams 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 is false.

v4.19.1

12 Sep 11:48
57db57b
Compare
Choose a tag to compare

Improvements

  • Improved speed of MessageCollection.initialize() when there are lots of reply messages in the channel.

v4.19.0

11 Sep 05:03
7d06baa
Compare
Choose a tag to compare

Features

  • Added interfaces for MessageForm to work with Sendbird dashboard and Form interfaces have been deprecated.
    • Added submitMessageForm(CompletionHandler?) method in BaseMessage class
    • Added messageForm property in BaseMessage class
    • Added MessageForm class
    • Added MessageFormItem class
    • Added MessageFormItem.Style class
    • Added MessageFormItem.LayoutType enum
    • Added MessageFormItem.ResultCount enum
    • Deprecated submitForm(Form, CompletionHandler) method in BaseMessage class
    • Deprecated forms property in BaseMessage class
    • Deprecated Form class and interfaces
    • Deprecated FormField class and interfaces
    • Deprecated FormFieldAnswer class and interfaces
  • Added TemplateContainerOptions in TemplateMessageData
  • 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

Improvements

  • Fixed an occasional ConcurrentModificationException crash from BaseMessageCollection.getPendingMessages.

v4.18.0

07 Aug 09:29
c1b6774
Compare
Choose a tag to compare

Features

Support pinned message in OpenChannel

  • Added pinnedMessageIds property to BaseChannel
  • Added lastPinnedMessage property to BaseChannel
  • Added pinMessage method to BaseChannel
  • Added unpinMessage method to BaseChannel
  • Added onPinnedMessageUpdated to OpenChannelHandler
  • Expanded SendbirdChat.createPinnedMessageListQuery to use in OpenChannel