Skip to content

Releases: Synerise/react-native-synerise-sdk

v0.23.1

17 Sep 13:56
Compare
Choose a tag to compare

[0.23.1] - 2024-09-16

Fixed

  • [Android] Null pointer exception while launching callback from push notification in some cases.

v0.23.0

05 Aug 13:14
Compare
Choose a tag to compare

[0.23.0] - 2024-08-05

Fixed

  • [iOS] Potential issue with slow SDK initialization.
  • [iOS] Potential issues with Simple Authentication requests.

Added

  • We added new parameters to the push.click event: clickSource, actionType, url and actionButtonTitle.

Changed

  • Update of native SDK's dependencies.

v0.22.0

15 Jul 21:52
Compare
Choose a tag to compare

[0.22.0] - 2024-07-16

IMPORTANT:
The SDK version 0.21.0 has been omitted for technical reasons.

Added

  • We added atestDelivery and journeyId parameters to tracked notification events (push.view, push.click, and so on). It describes if the notification was sent as a test notification from a campaign.
  • We added a new Synerise.content.generateDocumentWithApiQuery(apiQuery, onSuccess, onError) method. It is analogous to Synerise.content.generateDocument(slug:onSuccess:onError:), but can contain more context parameters provided in a query object.
  • We added a new Content.generateScreenViewWithApiQuery(apiQuery, onSuccess, onError) method. It is analogous to Synerise.content.generateScreenView(feedSlug:onSuccess:onError:), but can contain more context parameters provided in a query object.
  • Anchors from Drag & Drop Builder in the In-App editor are interpreted as URL or as deeplink depending on the value.

Changed

  • We added validation of reserved parameters in events. Now, if a parameter is forbidden, it is removed from the parameters and a log is printed.
  • Stability improvements.
  • Update of native SDK's dependencies.

v0.20.0

02 Jun 20:08
Compare
Choose a tag to compare

[0.20.0] - 2024-06-02

Fixed

  • [iOS] Some potential issues with retrieving system push consent by the SDK. The SDK set the constent to false when the general consent for the application was enabled, but at least one of the following options was disabled: alerts, sounds, badges.

Added

  • Synerise.settings.tracker.eventsTriggeringFlush option in settings to let you set the list of event actions which will trigger instant sending of all events in the queue. The default array contains only push event's actions.

Changed

  • All events connected with push campaigns will flush the queue and send events immediately.
  • Improvements to push notifications registration.
  • Stability improvements.
  • Update of native SDK's dependencies.

v0.19.0

09 Apr 10:49
Compare
Choose a tag to compare

[0.19.0] - 2024-04-09

Fixed

  • [Android] Deeplink action when clicking on push notification will directly open in app instead of prompt between app/browser. We set packageName to intent.
  • [Android] Updated proguard rules for joda.time, retrofit and gson.
  • [iOS] Some potential issues with notification processing in NotificationServiceExtension.
  • [iOS] Issue with non-scrolling in-app messages.

Added

  • Global Control Group support for in-app messages. From now on, you can use this feature in in-app messaging communication. This lets you take your marketing efforts to the next level and provides a solid foundation for accurate measurement of campaign effectiveness. Read more at https://hub.synerise.com/docs/settings/configuration/global-control-group/.
  • [iOS] Synerise.settings.sdk.localizable option in settings to let you localize some strings displayed by the SDK.

Changed

  • Improved mechanism for checking capping in in-app messages. The number of views no longer resets when the account's UUID changes.
  • The delegate method snr_registerForPushNotificationsIsNeeded() is invoked when the SDK is initialized completely.
  • When the Client.registerForPush(registrationToken:mobilePushAgreement:success:failure:) method fails, it invokes the snr_registerForPushNotificationsIsNeeded() delegate method after a short delay.
  • clientId property in the Token model.
  • Update of native SDK's dependencies.

v0.18.0

16 Jan 23:16
Compare
Choose a tag to compare

[0.18.0] - 2024-01-16

IMPORTANT:
Due to changes in the handling of actions for URLs and deep links in Synerise campaigns, we strongly recommend comparing your configuration with the SDK documentation. Review the changes from the previous SDK version integrated into your application here:
https://hub.synerise.com//developers/mobile-sdk/campaigns/action-handling/

Changed

  • Changes in handling actions from campaigns (read important note above).
  • Update of native SDK's dependencies.

v0.17.0

13 Dec 09:01
Compare
Choose a tag to compare

[0.17.0] - 2023-12-05

Fixed

  • [iOS] Issue with location of some SDK files in the Documents directory. The old location caused the SDK files to be visible in the shared documents directory if the host application file sharing was enabled.
  • [iOS] Potential issue with native notification buttons when Simple Push campaign contained Rich Media (Single Media) or had a custom notification category identifier.

Added

  • We added a new Synerise.Content.generateDocument(slug:onSuccess:onError:) method. It's analogous to Synerise.Content.getDocument(slug:onSuccess:onError:). The old method is deprecated. The new method generates the document that is defined for the provided slug.
  • We added a new Synerise.Content.getRecommendationsV2(options:onSuccess:onError:) method. It's analogous to Synerise.Content.getRecommendations(options:onSuccess:onError:). The old method is deprecated. The new method gets recommendations that are defined for the options provided.
  • We added a new Synerise.Content.generateScreenView(feedSlug:onSuccess:onError:) method. It's analogous to Synerise.Content.getScreenView(onSuccess:onError:). The old method is deprecated. The new method generates a customer's highest-priority screen view campaign that is defined for the provided slug.
  • We added models correlating with new methods: ScreenView, Document.

Changed

  • Synerise.Content.getDocument(slug:onSuccess:onError:) is deprecated now.
  • Synerise.Content.getDocuments(apiQuery:onSuccess:onError:) is deprecated now.
  • Synerise.Content.getRecommendations(options:onSuccess:onError:) is deprecated now.
  • Synerise.Content.getScreenView(onSuccess:onError:) is deprecated now.
  • Update of native SDK's dependencies.

v0.16.0

13 Dec 09:01
Compare
Choose a tag to compare

[0.16.0] - 2023-10-30

Added

  • Synerise.Settings.inAppMessaging.shouldSendInAppCappingEvent option in settings to enable or disable sending inApp.capping event by the SDK.

Changed

  • Update of native SDK's dependencies.
  • Improvements to stability.

v0.15.0

13 Dec 09:02
Compare
Choose a tag to compare

[0.15.0] - 2023-08-11

Added

  • New authentication mechanism - Simple Authentication. It allows identification of customers without implementing more complicated processes such as RaaS, OAuth, or authenticating by third party services, for example Facebook or Apple. Simple Authentication needs only two methods - Synerise.Client.simpleAuthentication(data:authID:onSuccess:onError:) to recognize a customer and Synerise.Client.isSignedInViaSimpleAuthentication() to check if the customer is signed in and uses the Simple Authentication feature. The Synerise.Client.signOut() method and similar methods are a common way to sign out and clear the user context.

Changed

  • We changed nullability of mobileAgreements parameter in a Synerise.Notifications.registerForPush(registrationToken:success:failure:) method. It doesn't require themobilePushAgreement parameter (it can be null) and thanks to that, it doesn't update the customer in the database.
  • Update of native SDK's dependencies.

v0.14.0

13 Dec 09:02
Compare
Choose a tag to compare

[0.14.0] - 2023-06-15

Fixed

  • Synerise.isInitialized method checks native and javascript module if it is completely initialized.

Added

  • We added a new Client.signOut(mode:fromAllDevices:onSuccess:onError:) method. It is analogous to Client.signOut(mode:). It is an asynchronous method and notifies the backend that the client is signed out and determines if all other devices should be signed out too. Remember, signOutWithSessionDestroy mode clears the anonymous session and regenerates the client UUID. The Client.signOut(mode:) method is removed now.
  • TSDoc code documentation in modules for better syntax promting.

Changed

  • Client.deleteAccount(password:onSuccess:onError:) is deprecated now.
  • Client.deleteAccountByOAuth(accessToken:onSuccess:onError) is deprecated now.
  • Client.deleteAccountByFacebook(facebookToken:onSuccess:onError) is deprecated now.
  • Update of native SDK's dependencies.
  • Improvements to stability.