Skip to content

Releases: BatchLabs/Batch-Android-SDK

1.18.0

25 Nov 17:08
Compare
Choose a tag to compare

Core

  • Fixed detection of indonesian, hebrew and yiddish languages.
  • Improved how the device locale is detected to better support language variations.
  • Fixed an issue where the direct opens weren't always tracked in singleTop/singleTask activities using onNewIntent.

Events

  • The event tracker now retries less aggressively in deteriorated network conditions.
  • Added URL type (using java.net.URI) in event data.

Attributes

  • Added URL type in custom attributes.

Messaging

  • Fixed an issue where in-app campaigns could lead to a crash of the app when swiping to dismiss.
  • Added support for Activity Exclusion. This allows to easily exclude some activities such as a splash screen from Batch rather than having to implement a Do Not Disturb mode. Intent forwarding is automatically handled by the SDK.

Push

  • Added compatibility with FCM Tokens. Batch now supports firebase-messaging 22.0.0 natively without having to add firebase-iid.

Inbox

  • Batch will now cache notifications marked as read or deleted to avoid any synchronization issues.
  • Method isDeleted() from BatchInboxNotificationContent is now deprecated.

Debug

  • Fixed an issue where the debug activity would show the advertising identifier even if it was disabled. The bug was purely cosmetic and the identifier was not sent to Batch.
  • Batch will now copy the installation ID to the clipboard when the application is foregrounded multiple times in a short timespan. This is enabled by default, you can disable it at any moment by using Batch.setFindMyInstallationEnabled(false).

1.17.3

04 Nov 17:24
Compare
Choose a tag to compare

Event Dispatchers

  • Fixed an issue where event dispatchers added via Batch.EventDispatcher.addDispatcher() were unregistered when Batch stopped: they will stay registered.
    Statically declared (such as Batch's builtin ones) were unregistered and re-registered on start: those are now loaded only once in the Application's lifetime.

1.17.2

15 Jun 10:56
Compare
Choose a tag to compare

Core

  • Added a package query entry in AndroidManifest.xml for com.android.vending to make Play Store detection work more accurately on Huawei devices.

Messaging

  • Fix in-app campaigns cache being unreadable.

User

  • Fixed an issue where builtin event track action would not be able to parse dates on Lollipop and lower.

1.17.1

07 Apr 13:54
Compare
Choose a tag to compare

Core

  • Fixed a memory leak due to Batch retaining the first activity that appeared on screen.

Actions

  • Fixed a bug where batch.user.event would fail is no event label was specified. This aligns the behaviour with iOS' implementation.

User

  • Tracking an event with an empty label now behaves as if the label was null. Event labels that are only composed of whitespaces are unchanged for compatibility.

Messaging

  • Caching has been disabled on the WebView format.

1.17.0

04 Mar 15:56
Compare
Choose a tag to compare

Core

  • Added a package query entry in AndroidManifest.xml for com.huawei.appmarket to enable detection of the Huawei AppGallery.
  • Added missing android:exported manifest attributes in preparation for Android 12.

Actions

  • Added batch.rating, which asks the user to review your app using the Google Play In-App Review API.
    To enable in-app review, add the com.google.android.play:core dependency to your project.
    If the library is missing or fails, the SDK will open the Play Store/Huawei AppGallery.
  • Added batch.clipboard, which can copy text to the clipboard.

Messaging

  • Added support for a new UI format: WebView. See documentation for more info.
  • Added onBatchMessageCancelledByError on Batch.Messaging.LifecycleListener, called when a message could not be loaded due to an error when loading the message's content.
  • Added onBatchMessageWebViewActionTriggered on Batch.Messaging.LifecycleListener, called when a in-app webview format action has been triggered.
  • In-App campaign cache is now cleared on server errors

Push

  • Important change: Push open pending intents are now created with FLAG_IMMUTABLE on Android M and higher in preparation for Android 12.
    This also applies to PendingIntent instances returned by Batch.Push.makePendingIntent*() methods.

Event Dispatchers

  • Added the new event types MESSAGING_CLOSE_ERROR and MESSAGING_WEBVIEW_CLICK. See javadoc for more info.

1.16.3

03 Mar 14:49
Compare
Choose a tag to compare

Core

  • Fix an issue where Batch might lose some module configuration (such as the push small icon) when an activity is destroyed and no other is on screen.

Push

  • Fix a bug where query parameters of rich push media URLs were escaped twice, making use of non URL safe characters impossible.

1.16.2

15 Feb 16:02
Compare
Choose a tag to compare

Messaging

  • Fix in-app campaigns cache being unreadable. This caused an issue where in-app campaigns with a NEW_SESSION trigger would not work if Android or the user killed the application process.

1.16.1

27 Oct 16:47
Compare
Choose a tag to compare

Core

  • Fixed a crash that happened when using Messaging (In-App messages/Mobile landings) or the Debug view. It was due to the removal of a default proguard rule, resulting in broken R references.

1.16.0

19 Oct 10:02
Compare
Choose a tag to compare

Core

  • Batch is now built using the Android 11 (sdk version 30) SDK, and targets it. Android 11 is fully supported.
  • Batch is now built using R8 rather than proguard.
  • Add support for Push/Advertising ID plugins.
  • Support for TLS versions older than 1.2 has been disabled for devices on Lollipop and higher. Devices on 4.1 to 4.4 might still use TLS 1.1 for compatiblity.
  • Should to fix an issue where Google would report a security issue in com.batch.android.c.h.c due to our usage of an ECB cipher. We've always used standard HTTPS for our network communication: the weak encryption is only used for an additional layer of security on disk and during transport.

Inbox

  • Enhanced the way the SDK fetchs notifications from the servers to greatly reduce bandwidth usage. No public API change.

Messaging

  • Fixed an issue where In-App messages might not survive rotation with newer AndroidX core versions.
  • Fixed an issue where rotating an autoclosable In-App message would not show the right countdown.
  • Fixed an issue where LeakCanary would temporarily report a leak with autoclosable messages. This was due to a delayed callback that eventually went away: Batch now cancels it sooner.
  • Auto closable In-App messages won't attempt to dismiss themselves in the background anymore: they'll check if they should have been in onStart.

1.15.2

20 May 15:30
Compare
Choose a tag to compare

Messaging

  • Fixed a crash where the app would crash if the user rotated an automatically dismissing fullscreen/modal/image template.

User

  • Added support for Date in BatchEventData.
  • BatchEventData now supports up to 15 attributes (used to be 10).
  • BatchUserAttribute now has a public constructor for easier mocking.