diff --git a/content/docs/android/changelog.mdx b/content/docs/android/changelog.mdx index 8f8d294..013b5b7 100644 --- a/content/docs/android/changelog.mdx +++ b/content/docs/android/changelog.mdx @@ -3,6 +3,27 @@ title: "Changelog" description: "Release notes for the Superwall Android SDK" --- +## 2.7.10 + +## Potentially impactful changes +- Billing errors on register are now wrapped in `SubscriptionStatusTimeout` errors +- This is used to clarify that the status is timing out due to billing errors. If you are depending on the `NoPaywallView` to distinguish between these, ensure you are checking for the proper status. + +## Enhancements +- Adds onboarding analytics +- Adds prioritized preloading support +- Improved error handling + +## Fixes +- Prevents paywalls from dismissing on return from deep link +- Fixes deadlock in `SerialTaskManager` +- Fix issues with bottom sheet on certain Samsung devices + +## 2.7.9 + +## Fixes +- Fix review dialog closing paywall + ## 2.7.8 ### Fixes diff --git a/content/docs/android/index.mdx b/content/docs/android/index.mdx index f5b9aa7..a09392e 100644 --- a/content/docs/android/index.mdx +++ b/content/docs/android/index.mdx @@ -42,4 +42,4 @@ If you have feedback on any of our docs, please leave a rating and message at th If you have any issues with the SDK, please [open an issue on GitHub](https://github.com/superwall/superwall-android/issues). - + diff --git a/content/docs/android/quickstart/install.mdx b/content/docs/android/quickstart/install.mdx index 77d0549..742071e 100644 --- a/content/docs/android/quickstart/install.mdx +++ b/content/docs/android/quickstart/install.mdx @@ -20,16 +20,16 @@ can find the [latest release here](https://github.com/superwall/Superwall-Androi ```gradle build.gradle -implementation "com.superwall.sdk:superwall-android:2.7.8" +implementation "com.superwall.sdk:superwall-android:2.7.10" ``` ```kotlin build.gradle.kts -implementation("com.superwall.sdk:superwall-android:2.7.8") +implementation("com.superwall.sdk:superwall-android:2.7.10") ``` ```toml libs.version.toml [libraries] -superwall-android = { group = "com.superwall.sdk", name = "superwall-android", version = "2.7.8" } +superwall-android = { group = "com.superwall.sdk", name = "superwall-android", version = "2.7.10" } // And in your build.gradle.kts dependencies { diff --git a/content/docs/android/sdk-reference/SuperwallEvent.mdx b/content/docs/android/sdk-reference/SuperwallEvent.mdx index 9a69171..a1d09ab 100644 --- a/content/docs/android/sdk-reference/SuperwallEvent.mdx +++ b/content/docs/android/sdk-reference/SuperwallEvent.mdx @@ -38,6 +38,10 @@ sealed class SuperwallEvent { ) : SuperwallEvent() data class PaywallOpen(val paywallInfo: PaywallInfo) : SuperwallEvent() + data class PaywallPageView( + val paywallInfo: PaywallInfo, + val data: PageViewData + ) : SuperwallEvent() data class PaywallClose(val paywallInfo: PaywallInfo) : SuperwallEvent() data class PaywallDecline(val paywallInfo: PaywallInfo) : SuperwallEvent() @@ -138,6 +142,7 @@ sealed class SuperwallEvent { Each event contains associated values with relevant information for that event type. Common parameters include: - `paywallInfo: PaywallInfo` - Information about the paywall +- `data: PageViewData` - Metadata for multi-page paywall navigation, including the page name, position in the flow, navigation type, and previous-page timing when available - `product: StoreProduct` - The product involved in transactions - `url: String` - Deep link URLs - `attributes: Map` - Device or user attributes @@ -154,6 +159,10 @@ These events are received via [`SuperwallDelegate.handleSuperwallEvent(eventInfo - `PaywallWebviewLoadTimeout` is deprecated. This event was causing confusion due to its naming and has been removed from internal tracking. It will no longer fire. +## New events in 2.7.10 + +- `PaywallPageView` fires when a user navigates within a multi-page paywall. Use `event.data.pageName`, `event.data.flowPosition`, and `event.data.navigationType` to understand how they moved through the flow, and inspect the optional previous-page fields when you need timing context. + ## New events in 2.6.6+ - `CustomerInfoDidChange` fires whenever the SDK merges device, web, and external purchase controller data into a new [`CustomerInfo`](/android/quickstart/tracking-subscription-state#reading-detailed-purchase-history-2-6-6) snapshot. The event includes the previous and next objects so you can diff entitlements or transactions. @@ -183,6 +192,14 @@ override fun handleSuperwallEvent(eventInfo: SuperwallEventInfo) { is SuperwallEvent.PermissionDenied -> { showPermissionHelpSheet(event.permissionName) } + is SuperwallEvent.PaywallPageView -> { + analytics.track("paywall_page_view", mapOf( + "paywall_id" to event.paywallInfo.id, + "page_name" to event.data.pageName, + "flow_position" to event.data.flowPosition, + "navigation_type" to event.data.navigationType + )) + } is SuperwallEvent.PaywallPreloadComplete -> { Logger.i("Superwall", "Preloaded ${event.paywallCount} paywalls") } diff --git a/content/docs/android/sdk-reference/index.mdx b/content/docs/android/sdk-reference/index.mdx index 2796455..fb8964a 100644 --- a/content/docs/android/sdk-reference/index.mdx +++ b/content/docs/android/sdk-reference/index.mdx @@ -15,4 +15,4 @@ If you have feedback on any of our docs, please leave a rating and message at th If you have any issues with the SDK, please [open an issue on GitHub](https://github.com/superwall/superwall-android/issues). - +