Skip to content

Releases: BatchLabs/Batch-Android-SDK

3.1.1

29 Oct 11:19

Choose a tag to compare

Core

  • Prevent Huawei devices from crashing when trying to run an old Job scheduled by the SDK.

3.1.0

16 Sep 09:30

Choose a tag to compare

Core

  • Fixed an edge case where the 3.0.1 crash fix didn't work as expected when upgrading from SDK 3.0.0.

Messaging

  • Introduced In-App Automations within the Customer Engagement Platform.
  • Introduced Spacer component for creating flexible empty space within In-App messages.
  • Added support for In-App WebView format within the Customer Engagement Platform.
  • Added fill option for In-App component height.

3.0.1

06 Aug 15:41

Choose a tag to compare

Core

  • Fixed an issue where an app upgraded from Batch SDK 1.x/2.x could crash once when Android tried to run a Job scheduled by the SDK.

Messaging

  • Fixed an issue preventing content scrolling in In-App messages displayed as modals at the top or bottom of the screen.
  • Fixed an issue where In-App messages might not display during NEW SESSION events.

Event Dispatcher

  • Fixed an issue causing getTrackingId() in Batch.EventDispatcher.Payload to return null for CEP (Customer Engagement Platform) messages.

3.0.0

05 Jun 09:17

Choose a tag to compare

This is a major release, please see our migration guide for more info on how update your current Batch implementation.

Core

  • Batch now compiles with SDK 36 (Android 16 'Baklava').
  • Batch now uses Kotlin (1.9.0) internally. This should not affect your existing Java-based integrations as public APIs remain in Java.

Push

  • Fixed an issue where push notifications could display a blank area when the image download failed.
  • Added Batch.Push.setShowNotifications method to control whether push notifications should be displayed.
  • Added Batch.Push.shouldShowNotifications method to check current notification display settings.
  • Removed PushNotificationType enum and related methods getNotificationsType and setNotificationsType from Batch.Push. You should now use setShowNotifications to control whether Batch should display notifications or not. Note that Batch still preserves your previous values and shouldShowNotifications will reflect them."

Profile

  • Fixed an issue preventing Turkish-speaking users from correctly setting Email/SMS subscription states.

Messaging

  • Added compatibility for Mobile Landings with Push v2 which can be created from the drag & drop composer in the Batch Dashboard.
  • Added interface Batch.Messaging.InAppInterceptor and method Batch.Messaging.setInAppInterceptor in order to handle messages yourself.
  • Added method loadMessagingView to control when and how a mobile landing will be displayed.
  • LifecycleListener has been redesigned:
    • Added method onBatchMessageClosed(String, MessagingCloseReason).
    • Added enum Batch.Messaging.LifecycleListener.MessagingCloseReason which indicates why an In-App message was closed.
    • Updated method onBatchMessageActionTriggered. The index parameter has been replaced by ctaIdentifier. This method is still called on MEP (Mobile Engagement Platform) messages, but you will now receive an identifier built from the old cta index : “mepCtaIndex:” + index.
    • Removed individual close callback methods (onBatchMessageCancelledByUser, onBatchMessageCancelledByAutoclose, onBatchMessageCancelledByError, onBatchMessageClosed). Use the new unified onBatchMessageClosed(String, MessagingCloseReason) method.
    • Removed method onBatchMessageWebViewActionTriggered. This will now triggered on onBatchMessageActionTriggered with the analyticsID as ctaIdentifier.
    • Constant GLOBAL_TAP_ACTION_INDEX now returns a String instead of an int.
  • Removed Batch.Messaging.LifecycleListener2 interface, you should now use Batch.Messaging.InAppInterceptor with setInAppInterceptor.
  • Removed enum Format and method getFormat from BatchMessage. You should now check the kind of a BatchMessagingView to use the dedicated right methods to show your message.
  • Removed methods loadFragment and loadBanner from Batch.Messaging. Use the new loadMessagingView method instead.
  • Removed class BatchBannerView. Use BatchMessagingView returned by loadMessagingView instead.
  • Renamed method getContent from class BatchInAppMessage to getMEPContent. This method will return null for messages coming from the CEP (Customer Engagement Platform).

Debug

  • Added support for edge-to-edge display in BatchDebugActivity.

2.1.1

10 Dec 15:23

Choose a tag to compare

Inbox

  • Fixed an issue where a BatchInboxNotificationContent could not be flagged as silent.

Messaging

  • Fixed an issue where isDismissAction of BatchMessageAction always return false

2.1.0

29 Oct 15:51

Choose a tag to compare

Core

  • Batch now compiles with SDK 35 (Android 15 'Vanilla Ice Cream').
  • Opted-out the Batch Debug Activity from Android 15 edge-to-edge enforcement.

Profile

  • Added setPhoneNumber API to the BatchProfileAttributeEditor class. This requires to have a user identifier registered or to call the identify method beforehand.
  • Added setSMSMarketingSubscription API to the BatchProfileAttributeEditor class.
  • Strengthened custom user identifier validation on identify API to avoid unintended values.

2.0.3

13 Jun 13:28

Choose a tag to compare

Core

  • Fixed an issue where Batch wasn't clearing some data when using Batch.optOutAndWipeData(). Since version 2.0, the Batch SDK caches some data (such as device language/region) to detect changes. It's this data that was not deleted when calling the opt-out method with data deletion. This issue only affects local SDK data and not server-side data.

2.0.2

27 May 08:28

Choose a tag to compare

Profile

  • Fixed an issue where Batch would crash when using addToArray or removeFromArray on a BatchProfileAttributeEditor instance.

2.0.1

22 May 13:52

Choose a tag to compare

Core

  • Fix an issue where some methods were obfuscated in a class annotated with @keep since AGP 8.0 enables R8 full mode by default.

1.21.2

29 Apr 09:38

Choose a tag to compare

Messaging

  • Fixed a rare crash on In-App Webview format that could happen when Batch would get the deeplink url for an image embedded into a hyperlink.
  • Fixed a rare crash on In-App and Mobile Landing that could happen when Batch would display a wrong gif format.