Skip to content

Releases: superwall/Superwall-Android

1.2.1

23 Jul 10:42
38ecca8
Compare
Choose a tag to compare

1.2.1

Enhancements

  • Adds the ability for the SDK to refresh the Superwall configuration every session start, subject to a feature flag.
  • Tracks a config_refresh Superwall event when the configuration is refreshed.
  • SW-2890: Adds capabilities to device attributes. This is a comma-separated list of capabilities the SDK has that you can target in audience filters. This release adds the paywall_event_receiver capability. This indicates that the paywall can receive transaction from the SDK.
  • SW-2902: Adds abandoned_product_id to a transaction_abandon event to use in audience filters. You can use this to show a paywall if a user abandons the transaction for a specific product.

1.2.0

12 Jul 10:57
5305202
Compare
Choose a tag to compare

Enhancements

  • Adds DSL methods for configuring the SDK. You can now use a configuration block:
    fun Application.configureSuperwall(
          apiKey: String,
          configure: SuperwallBuilder.() -> Unit,
    )

This allows you to configure the SDK in a more idiomatic way:

   configureSuperwall(CONSTANT_API_KEY){
      options {
        logging {
          level = LogLevel.debug
        }
        paywalls {
          shouldPreload = false
        }
      }
  }

Deprecations

This release includes multiple deprecations that will be removed in upcoming versions.
Most are internal and will not affect the public API, those that will are marked as such and a simple migration
path is provided. The notable ones in the public API are as follows:

  • Deprecated DebugViewControllerActivity in favor of DebugViewActivity

  • Deprecated PaywallViewController in favor of PaywallView

    • Deprecated belonging methods:
      • viewWillAppear in favor of beforeViewCreated
      • viewDidAppear in favor of onViewCreated
      • viewWillDisappear in favor of beforeOnDestroy
      • viewDidDisappear in favor of destroyed
      • presentAlert in favor of showAlert
  • Deprecated PaywallViewControllerDelegate in favor of PaywallViewCallback

    • Deprecated belonging methods:
      • didFinish in favor of onFinished
  • Deprecated PaywallViewControllerEventDelegate in favor of PaywallViewEventCallback

    • Users might also note deprecation of PaywallWebEvent.OpenedUrlInSafari in favor of PaywallWebEvent.OpenedUrlInChrome
      • didFinish in favor of onFinished
  • In Superwall, the following methods were deprecated:

    • Superwall.paywallViewController in favor of Superwall.paywallView
    • Superwall.eventDidOccur argument paywallViewController in favor of paywallView
    • Superwall.dismiss in favor of `Superwall.presentPaywallView
    • Superwall.presentPaywallViewController in favor of Superwall.presentPaywallView
  • Deprecated Paywallmanager.getPaywallViewController in favor of PaywallManager.getPaywallView

  • Deprecated DebugManager.viewController in favor of DebugManager.view

  • Deprecated DebugViewController in favor of DebugView

  • Deprecated LogScope.debugViewController in favor of LogScope.debugView

  • Deprecated PaywallPresentationRequestStatus.NoPaywallViewController in favor of NoPaywallView

1.1.9

12 Jul 10:56
43ac4be
Compare
Choose a tag to compare

Deprecations

  • Deprecated configuration method Superwall.configure(applicationContext: Context, ...) in favor of Superwall.configure(applicationContext: Application, ...) to enforce type safety. The rest of the method signature remains the same.

Fixes

  • SW-2878: and it's related leaks. The PaywallViewController was not being properly detached when activity was stopped, causing memory leaks.
  • SW-2872: Fixes issue where deviceAttributes event and fetching would not await for IP geo to complete.
  • Fixes issues on tablet devices where the paywall would close after rotation/configuration change.

1.1.8

17 Jun 09:39
942b9f3
Compare
Choose a tag to compare

Enhancements

  • SW-2859: Adds error message to paywallWebviewLoad_fail.
  • SW-2866: Logs error when trying to purchase a product that has failed to load.
  • SW-2869: Add Reset event to track when Superwall.instance.reset is called.
  • SW-2867: Prevents Geo api from being called when app is in the background
  • SW-2431: Improves coroutine scope usages & threading limits
  • Toolchain and dependency updates

Fixes

  • SW-2863: Fixed a NullPointerException some users on Android 12 & 13 would experience when calling configure.

1.1.7

06 Jun 14:16
0324ca5
Compare
Choose a tag to compare

Enhancements

  • SW-2805: Exposes a presentation property on the PaywallInfo object. This contains information about the presentation of the paywall.
  • SW-2855: Adds restore_start, restore_complete, and restore_fail events.

Fixes

  • SW-2854: Fixed issue where abandoning the transaction by pressing back would prevent the user from restarting the transaction.

1.1.6

03 Jun 09:41
fef994b
Compare
Choose a tag to compare

Enhancements

  • SW-2833: Adds support for dark mode paywall background color.
  • Adds ability to target devices based on their IP address location. Use device.ipRegion,
    device.ipRegionCode, device.ipCountry, device.ipCity, device.ipContinent, or device.ipTimezone.
  • Adds event_name to the event params for use with audience filters.

Fixes

  • Fixes issue with products whose labels weren't primary/secondary/tertiary.

1.1.5

10 May 15:49
dcb693b
Compare
Choose a tag to compare

Fixes

  • Fixes thread safety crash when multiple threads attempted to initialize the JavaScriptSandbox internally.

1.1.3

30 Apr 21:53
Compare
Choose a tag to compare

Enhancements

  • Tracks an identity_alias event whenever identify is called to alias Superwall's anonymous ID with a developer provided id.
  • Adds setInterfaceStyle(interfaceStyle:) which can be used to override the system interface style.
  • Adds device.interfaceStyleMode to the device template, which can be automatic or manual if overriding the interface style.

Fixes

  • Uses JavascriptSandbox when available for filter expression evaluation on a background thread instead of running code on the main thread in a webview.
  • Fixes crash where the loading spinner inside the PaywallViewController was being updated outside the main thread.

1.1.2

16 Apr 17:49
a657fe4
Compare
Choose a tag to compare

Enhancements

  • Updates build.gradle configuration which means we can now upload the SDK to maven central. You no longer need to specify our custom repo in your build.gradle to get our SDK and therefore installation should be easier.

Fixes

  • Fixes ConcurrentModificationException crash that sometimes happened when identifying a user.
  • Fixes crash on purchasing a free trial when using getPaywall.

1.1.1

08 Apr 22:51
3fc8c0f
Compare
Choose a tag to compare

Fixes

  • Fixes an issue loading products with offers.