Repository navigation
3.0.0
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.setShowNotificationsmethod to control whether push notifications should be displayed. - Added
Batch.Push.shouldShowNotificationsmethod to check current notification display settings. - Removed
PushNotificationTypeenum and related methodsgetNotificationsTypeandsetNotificationsTypefromBatch.Push. You should now usesetShowNotificationsto control whether Batch should display notifications or not. Note that Batch still preserves your previous values andshouldShowNotificationswill 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.InAppInterceptorand methodBatch.Messaging.setInAppInterceptorin order to handle messages yourself. - Added method
loadMessagingViewto control when and how a mobile landing will be displayed. LifecycleListenerhas been redesigned:- Added method
onBatchMessageClosed(String, MessagingCloseReason). - Added enum
Batch.Messaging.LifecycleListener.MessagingCloseReasonwhich indicates why an In-App message was closed. - Updated method
onBatchMessageActionTriggered. Theindexparameter has been replaced byctaIdentifier. 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 unifiedonBatchMessageClosed(String, MessagingCloseReason)method. - Removed method
onBatchMessageWebViewActionTriggered. This will now triggered ononBatchMessageActionTriggeredwith theanalyticsIDasctaIdentifier. - Constant
GLOBAL_TAP_ACTION_INDEXnow returns a String instead of an int.
- Added method
- Removed
Batch.Messaging.LifecycleListener2interface, you should now useBatch.Messaging.InAppInterceptorwithsetInAppInterceptor. - Removed enum
Formatand methodgetFormatfromBatchMessage. You should now check the kind of aBatchMessagingViewto use the dedicated right methods to show your message. - Removed methods
loadFragmentandloadBannerfromBatch.Messaging. Use the newloadMessagingViewmethod instead. - Removed class
BatchBannerView. UseBatchMessagingViewreturned byloadMessagingViewinstead. - Renamed method
getContentfrom classBatchInAppMessagetogetMEPContent. This method will return null for messages coming from the CEP (Customer Engagement Platform).
Debug
- Added support for edge-to-edge display in
BatchDebugActivity.