You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* chore: update iOS native dependency constraints
Align the Flutter iOS podspec and example Podfile with the latest mParticle Apple SDK guidance and keep installation docs in sync with the new minimum version.
* feat: add explicit Rokt event subscription bridge
Add a dedicated roktSubscribeToEvents bridge path and make selectPlacements rely on explicit event subscription to avoid implicit duplicate listener registration.
* fix: remove implicit shoppable ads event subscription
Stop auto-subscribing to Rokt events inside selectShoppableAds so event delivery consistently relies on explicit subscription APIs.
* feat: add shoppable ads button to Flutter example
Add an iOS-only Select Shoppable Ads action in the Rokt example screen and send the same attribute payload used in the MAUI sample for parity testing.
* chore: align example runtime setup for rokt validation
Update the example app runtime configuration so placement and shoppable ads validation uses the current test identifiers and iOS payment extension dependency.
* fix: restore android example min sdk to 21
Revert the example app minSdk configuration to 21 to keep release APK builds stable with core library desugaring in CI.
* docs: update rokt setup and migration guidance
Document explicit Rokt event subscriptions and iOS payment extension setup for shoppable ads in both README and migration notes.
* fix: deduplicate iOS rokt event subscriptions by identifier
Prevent duplicate callback registration when events() is called repeatedly for the same placement identifier on iOS.
-**Android**: the method is exposed for API parity but is a no-op (logs a warning).
93
93
-**Web**: not implemented — calls will throw `MissingPluginException`.
94
94
95
-
Events for a shoppable ads placement are delivered on the existing `MPRoktEvents``EventChannel` once`selectShoppableAds` has been called.
95
+
Rokt event delivery now uses explicit subscription by identifier through `Rokt.events(...)`. Call `events(identifier, ...)` before `selectPlacements(...)` or`selectShoppableAds(...)` for that identifier.
96
96
97
-
The Rokt Apple Pay payment extension (for example `RoktStripePaymentExtension`) is **not** proxied through Dart. Integrators must register it directly from native Swift/Objective-C in the host app (for example `ios/Runner/AppDelegate.swift`), after `MParticle.sharedInstance().start(with:)`. See the [Apple SDK Rokt integration section](https://github.com/mParticle/mparticle-apple-sdk/blob/main/README.md#rokt-integration) for the exact snippet.
97
+
The Rokt payment extension (for example `RoktPaymentExtension`) is **not** proxied through Dart. Integrators must add the pod and register it directly from native Swift/Objective-C in the host app (for example `ios/Runner/AppDelegate.swift`), after `MParticle.sharedInstance().start(with:)`.
To enable iOS payment flows for shoppable ads, add the payment extension pod in your app `ios/Podfile` and register it natively after `MParticle.sharedInstance().start(with:)`:
0 commit comments