Release Notes

All notable releases for the Zendesk SDK for Android will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.19.0] - 2024-03-21

Added

  • Users can now open a Conversation Extension in the application to enhance interactive experiences atop the conversation view.
  • Users can now open articles from the help center directly within the application using the Article Viewer that sit on top of the conversation view.
  • Message generated by AI are displayed with a disclaimer at the bottom of that respective message.
  • Improved color management for the retry button through technical upgrades.

Fixed

  • Fixed an issue where authenticated sessions incorrectly reverted to Zendesk bot after agent handover.
  • Resolved the UI flicker issue related to Typing Indicator and Message Divider.
  • Fixed an issue where sending a Text type message with actions but no text to a conversation caused the avatar, receipt, and label not to render. This behavior now applies to only Quick Reply actions.
  • Fixed an issue where the SDK would crash when no clients were available on the device, affecting actions such as clicking on email addresses or URLs, opening documents, audio and video files, and accessing the camera.
  • Fixed an issue where the last message in the conversation list screen appeared empty when a user received a message with actions but no text.
  • Fixed a bug where tapping on failed messages would incorrectly open other apps instead of resending the failed phone, email and web URL messages.
  • Fixed a bug that caused file attachments to duplicate in conversation due to reconnection issues. This resulted in messages with different ids and states.
  • Resolved a crash issue arising when the end-user authentication token (JWT) lacked optional client information.

[2.18.0] - 2024-02-01

Added

  • Users can copy the contents of a message by long pressing (also known as pressing-and-holding) the messaging and selecting copy from the contextual menu.

Fixed

  • Scrolling issues where the user scrolls up in the conversation and receives a message, then changes device rotation or the SDK sends a request to fetch older messages. The user will not automatically jump to the bottom of the conversation. Instead, their current view will now persist.
  • Tapping outside the permission request dialog box now dismisses the dialog box.
  • Carousel cards and forms now have stronger borders in the dark mode. Similarly, the “see latest’ banner and the “new messages” banner now have a more distinguished background in the dark mode.
  • When the business sends a message that only has quick reply buttons but no text in the message body, no empty message bubble is displayed in the conversation. Only the quick reply buttons is displayed.
  • Color codes for certain UI components in the Android SDK now match the same components in the iOS SDK. For example, timestamp label, text in form fields, back button, quick reply button, and so forth.

[2.17.0] - 2023-11-30

Added

  • Technical upgrades for better color management.

Fixed

  • A crash on the Conversation List screen when recovering from the SDK forcibly being closed by the Android system.
  • A re-rendering issue on the animation of the message receipt.
  • A crash when entering the Conversation List screen via push notification after the SDK was forcibly closed by the Android system.
  • Flickering UI of text, image and carousel messages.
  • Connection banner text changed to “You’re now online” and corrected the text color for dark mode.

[2.16.0] - 2023-10-31

Added

  • Support for postback action type.

Postback buttons enhance your conversations as they can trigger server-side logic when a user clicks on them and are helpful when building a bot. You can also use them to trigger other server-side actions by clicking a button in the conversation, such as an “add-to-cart” action.

Fixed

  • Forms with multiple dropdown fields will no longer display multiple dropdown lists at the same time. Only one list will be displayed at a time.

[2.15.0] - 2023-10-03

Added

  • "See latest" navigation button, which helps users navigate effortlessly to the newest unread messages in a conversation.
  • Unread messages banner on the conversation screen to indicate to users that there are unread messages in the conversation.
  • Marking messages in the conversation as read will occur only when clicking the "See latest" navigation button or scrolling to the end of the conversation.
  • Action buttons in carousel messages for increased user engagement and interactivity.

Fixed

  • The attachment button has undergone a redesign and fixed an issue where the attachment button was flipped in RTL layouts.
  • Fixed the issue of adding margin space exclusively for LTR layouts in carousels.
  • Fixed the behaviour of the retry button in the offline banner to appear after rotating the device.
  • Resolved the issue where push notifications from the SDK were causing the integrator's app to restart instead of maintaining its current state.
  • Resolved the issue where the single article within the carousel was scrollable and had the previous and next arrow buttons displayed.
  • Resolved the issue of the conversation screen back button being not responsive under certain network conditions.

Changed

  • Update Kotlin to 1.8.
  • Update Gradle to 8.1.1.

[2.14.1] - 2023-08-28

Fixed

  • When a user replies using a form field, spell check doesn’t behave as expected compared to the Message Composer.
  • When a user is typing into a form field of type text, the text is converted into title case.
  • Conversation does not scroll to the bottom after presented with quick reply options.

[2.14.0] - 2023-08-16

Added

  • Android 14 support.
  • Accessibility improvements made to carousels.
  • When attachment uploads fail due to the max file size limit (50MB), the error message will indicate that the file size exceeds the limit.
  • An error message and a retry button will be displayed when the conversation screen fails to load.
  • The “sending” state for messages and attachments will persist for 60 seconds and lead to the “failed” status with a retry option if unsuccessful after 60 seconds.
  • Minor visual improvements to messages in a sending state.

[2.13.0] - 2023-07-05

Added

  • APIs to set messaging metadata, also known as conversation fields and conversation tags.
  • APIs to clear conversation fields and conversation tags from the SDK storage.
  • Support multiple buttons in carousel cards.

Fixed

  • Typing event should not force scroll the user to the bottom of the conversation screen.
  • Zendesk colors should not be used as a fallback.
  • The SDK should function when integrated with applications that run R8 and ProGuard.
  • Missing line space for taller locales in proactive message.

[2.12.0] - 2023-05-30

Added

  • Re-login an authenticated user when a user merge event is detected.
  • Functionality to enable and disable upload attachments. To disable attachments for mobile devices, you must disable them for both iOS and Android. Note: This feature is available only from version 2.12.0 and later.

Fixed

  • A field disappears after submitting form while offline.
  • Messages sent from web are now displayed on both the logged in iOS and Android conversation.
  • Image attachments is not being displayed.
  • The blockChatInput flag is not properly handled.
  • Outbound messages are not grouped correctly.

Changed

  • Kotlin version to 1.7.21.
  • The ProGuard rules have been updated to ensure compatibility with the default R8 mode enabled by Gradle 8.

[2.11.0] - 2023-04-24

Added

  • An API to set text color values until this is available to set via Admin Center.

Fixed

  • Theme colors now dynamically update when the configuration is updated.

[2.10.0] - 2023-04-17

Added

  • Various improvements to support future capabilities.

[2.9.0] - 2023-03-27

Added

  • Proactive messaging support.

Fixed

  • Conversation screen should scroll to the bottom in landscape mode after uploading images.

Changed

  • Removed elevation and drop shadow from form buttons.

[2.8.0] - 2022-11-30

Added

  • Accessibility support to ensure new messages are announced to the user in real time.

Fixed

  • Answer Bot interactions will always be displayed in the right order.
  • Failed messages will not affect the status of following successful messages.
  • Attachment button will still be visible when the composer is disabled.
  • Unread message divider will always be displayed for messages received while the app is in the background.
  • Compilation error will not occur when customer uses FileProvider.

[2.7.0] - 2022-10-26

Added

  • Upgrade Kotlin dependency to version 1.6.X.
  • Support link action type for all messages.
  • Upgrade Coil dependency to latest version.

Fixed

  • Tapping a form text field scrolls to the bottom of the conversation.
  • Exception appears in logs for Coil upgrade.
  • NullPointerException in API level 28 and below caused by URLConnection.
  • ConnectionBanner causes Stackoverflow crash.

[2.6.0] - 2022-09-15

Added

  • Capability to load more than 100 messages when the user scrolls to the top of the message list.
  • Accessibility improvements.

Fixed

  • Notifications runtime permissions will show up on screen (Android 13 only).
  • Tapping a sent video will play it.
  • Users will see the latest message that was displayed on the push notification when they tap a notification.

[2.5.0] - 2022-08-10

Added

  • Message receipt animation.
  • Improve accessibility.
  • Push notification permissions.
  • Media permissions.

Fixed

  • Scrolling issue after submitting a form.

Changed

  • Android 13 support.
  • Carousels have an improved design to a more modern structured look.

[2.4.0] - 2022-05-30

Added

  • Timestamp divider and grouping of messages on the conversation screen.
  • Improved handling of denial of permissions.
  • Support for increased number of items in the dropdown in a future release.

Fixed

  • Bug fix for the text composer not being re-enabled when new messages are received.

[2.3.0] - 2022-03-31

Added

  • Sending page view event for Visitor Path.
  • Support for Android 12.
  • Agent is typing indicator.

Changed

  • Kotlin version to 1.5.31.
  • SDK targets and compiles to API 31.

[2.2.0] - 2022-03-10

Added

  • A divider in the UI to separate new messages when the user re-enters the conversation screen.
  • Typed text is now persisted in a conversation screen.

Fixed

  • Improved connection strategy that sometimes prevented messages from showing in the conversation.

[2.1.0] - 2022-01-25

Added

  • End user authentication, enables a business to verify the identity of a user.

[2.0.0] - 2021-12-09

Added

  • Offline banner to inform user of connectivity state with auto retries and retry button.
  • Send button animation to indicate progress of form submission.
  • Skeleton loader is displayed while images and avatars are downloading from the network.
  • Hide the text composer when a form field is in focus.
  • Event Observer API to observe events emitted from the Zendesk SDK. See events documentation.
  • Event that passes the unread message count when the total number of unread messages has updated.
  • API to get the total number of unread messages.

Fixed

  • Android 12 (API 31) pending intent mutability change as per Android 12's documentation.
  • Email keyboard not displaying on Android 5.1.
  • EOFException terminating the WebSocket connection.
  • Focus on first form field triggering keyboard for text or expanding dropdowns.

Changed

  • SDK initialization moved from the Messaging module to the Zendesk module to enable flexibility as more capabilities are made available alongside messaging. See Initialize the SDK for more details.
  • Initialization snippet to accept a factory implementation of messaging.
  • Initialization errors are returned as a Throwable object instead of ZendeskError object.

Deprecated

  • Messaging module public APIs are now deprecated. Use the Zendesk module public APIs instead. The Messaging SDK initialization will be removed in a future version of the SDK.

[1.2.0] - 2021-10-04

Added

  • The ability for the end user to send images and file messages. See File Validation for all the supported file types.

[1.1.0] - 2021-08-24

Added

  • HTTP response caching for REST clients.
  • Additional details were added to initialization flow errors to more easily diagnose issues.

Fixed

  • A logger issue when an exception message was null.

[1.0.2] - 2021-08-10

Added

  • FR-CA locale as a new language.

Fixed

  • Quick replies not sending metadata to enable CSAT rating and fix reopening ticket issue.
  • Internal concurrent safe access to event listeners.
  • Flickering of sent messages when re-opening the conversation.
  • Ordering quick replies in place as received.
  • Carousel not adhering to RTL specifications.
  • Updating failed messages when opening the conversation from a push notification.
  • (Forms) Text field vertical space not reclaimed when re-validated.
  • (Forms) Icon missing in form field validation.
  • (Forms) Keep form response in place (replace form), instead of adding as a new message.
  • Optimized GIF loading.
  • Added 1dp border to image messages for smoother rounded corners.
  • Conversation screen showing a blank in edge cases.
  • Messages in a blank Conversation should flow from the top of the screen.
  • (API 21) Failed messages not properly styled.
  • (API 21) Font size not increasing.

[1.0.1] - 2021-02-08

Fixed

  • Message content partially displaying offscreen due to a mismatching version of ConstraintLayout.

[1.0.0] - 2021-02-01

The initial public version of the Zendesk SDK for Android.

Added

  • The ability for the end-user to start a messaging conversation with your business.
  • Direct integration with Zendesk's Flow Builder for building automated conversations.
  • The ability for the end-user to receive text, image, quick reply and carousel messages.
  • The ability for the end-user to send text messages to your business.
  • The ability for your business to send a form to the end-user and have the completed form returned.
  • The ability to customize the SDK's user interface colors from Zendesk’s Admin Center.
  • Support for 33 languages, including right-to-left languages. For the full list, see Language codes for Zendesk supported languages.
  • Support for Dark theme.
  • Support for landscape mode.
  • Support for WCAG 2.1 accessibility.