Skip to content

3.0.0

Latest
Compare
Choose a tag to compare
@arnaud-roland arnaud-roland released this 05 Jun 09:17
· 1 commit to master since this release

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.