Release Notes
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.27.0] - 2024-12-12
Fixed
- Fixed an issue where some metadata fields value would trim leading zeros.
- Fixed an issue where a form input field would be cleared if scrolled out of the view.
- Fixed an issue where selecting images the exiting and entering the conversation screen would duplicate the sent images.
- Fixed an issue where the CSAT message would cause a crash with Push Notification.
Added
- Implemented support for private attachments in conversations, enhancing the security and confidentiality of shared data.
- The Article Viewer now supports accounts with custom domains. The article URL detection has been improved to allow for the display of help center articles within the native article viewer, regardless of the domain used.
- Added a new event error
ZendeskJwtExpiredException
has been added inZendeskEvent.AuthenticationFailed
to allow for better error handling.
[2.26.1] - 2024-11-12
Fixed
- The conversation header in the single-conversation experience now correctly displays the channel title instead of the conversation start date. The conversation start date will only be shown in the header for the multi-conversation experience, as intended.
[2.26.0] - 2024-10-31
Fixed
- File attachments are downloaded and stored in the SDK's internal directory.
- Added WRITE_EXTERNAL_STORAGE permission for API Versions 22 and below to allow file attachments to be downloaded.
Added
- Updated text and colours of the ‘Unable to load image’ error.
- Updated the border width of the AI disclaimer.
- Removed a toast message displayed when the user clicks on the action button.
- Fixed serialization errors received on conversation start.
- Fixed extra spacing between carousel items.
- Fixed a security exception related to the connectivity manager that caused a crash on Android 11 devices.
- Fixed an exception thrown for network callback.
[2.25.0] - 2024-09-30
Fixed
- Fixed an issue where ConnectivityObserver was not handling exceptions that could be thrown by the ConnectivityManager.
- Action buttons in messages now support URI links beyond URLs, such as “tel:” for calls or “mailto:” for emails.
Added
- Support for Multi-conversations feature which will launch in October 2024. This new feature will allow your end users to seamlessly manage multiple ongoing conversations with your business at the same time. (Stay tuned for updates by visiting our What's New page for the latest product releases and announcements.)
[2.24.0] - 2024-08-19
Fixed
- The singleInstance activity launch mode triggers an unwanted jump animation when the SDK messaging screen is opened.
Changed
- Modify the predictive back gesture manifest flag enableOnBackInvokedCallback from the application level to the activity level.
Added
- Generate a ZendeskEvent for newly added conversations
- Generate a ZendeskEvent for messages that failed to send
- Generate a ZendeskEvent for connection status changes
[2.23.0] - 2024-08-05
Added
- Ability to switch between different instances of the Zendesk SDK within the same mobile app. This feature is especially valuable for customers managing multiple brands or territories within a single app.
- Android 15 Support. The SDK is now completely compatible with Android 15, aligning with the recent updates and functionality provided by Google.
- Support for different Conversation Extension sizes.
[2.22.0] - 2024-06-26
Fixed
- End user messages sent during periods of poor network connectivity were disappearing from the conversation.
- Response to quick reply options were duplicated during periods of poor network connectivity.
- Crashes occurring during file uploads in specific scenarios.
- Visual misalignment of quick reply options and carousel cards on the conversation screen.
Added
- Ability to automatically open conversation extensions upon receipt by a user. For more information, see Open automatically.
- Migrated to Kotlin 1.9.24 in order to support Kotlin 2.0.
Changed
- Updated Android Gradle plugin to 8.3.2.
Note: For Zendesk SDK to work with Android 2.22.0, you need the desugar_jdk_libs dependency to support new Java APIs on older Android versions. With Android Gradle plugin 8.3.0, this dependency is required even if your application doesn’t support API 25 and below. For more information on this change, see Google issue. You can find instructions on how to implement desugar_jdk_libs
in our Getting Started guide.
-
Updated the following dependencies. For more information on the SDK’s dependency tree, see Dependencies.
-
androidx.activity to 1.9.0
-
androix.core to 1.13.1
-
androidx.lifecycle to 2.8.2
-
android lint to 31.5.0
-
Android espresso web to 3.5.1
-
Coil to 2.6.0
-
Firebase to 33.1.0
-
Moshi to 1.15.1
-
Okhttp to 4.12.0
-
Retrofit to 2.11.0
-
Dagger to 2.51.1
-
com.google.android.material to 1.12.0
-
androidx.compat to 1.7.0
-
com.google.gms to 4.4.2
[2.21.0] - 2024-05-23
Fixed
- Resolved a memory leak issue when the conversation screen is launched.
- Fixed an issue where pending messages would appear and persist on the screen during unstable network conditions.
- Resolved an issue where the SDK would crash with Conversation Extensions on API 26.
- Fixed an issue where we would have a duplication of proactive messages.
- Improved form validation to properly account for whitespace characters.
- Fixed the keyboard send action when the last form option is a dropdown.
[2.20.1] - 2024-05-07
Fixed
- This release introduces an improved display for messages in high latency environment.
[2.20.0] - 2024-05-01
Fixed
- Fixed some issues to ensure all Help Center articles are opened in the article viewer in the SDK rather than navigating end users to a browser.
- User inputs on an unsent form will be preserved after the user leaves the conversation screen and comes back.
- When end users scroll up in a conversation and send a message, the view will automatically scroll to the bottom of the conversation showing the message sent.
- Fix to ensure metadata still populates correctly during unstable network conditions.
[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 sits on top of the conversation view. This is only supported when the account doesn’t use host mapping or other advanced methods, which causes the URL of the article to not match the account subdomain URL.
- 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 theZendesk
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 ofZendeskError
object.
Deprecated
Messaging
module public APIs are now deprecated. Use theZendesk
module public APIs instead. TheMessaging
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.