Skip to content

chore: migrate iOS Rokt integration to SDK 9#68

Open
denischilik wants to merge 4 commits intomainfrom
feat/add-shoppable-ads-support
Open

chore: migrate iOS Rokt integration to SDK 9#68
denischilik wants to merge 4 commits intomainfrom
feat/add-shoppable-ads-support

Conversation

@denischilik
Copy link
Copy Markdown
Contributor

@denischilik denischilik commented Apr 14, 2026

Background

This PR updates the Flutter plugin iOS integration to the SDK 9 contract surface so the plugin continues to compile and emit Rokt events after dependency upgrades.
This PR is intentionally scoped to migration and compatibility only.

What Has Changed

  • Updated iOS pod dependencies to SDK 9 (mParticle-Apple-SDK, mParticle-Apple-SDK-ObjC) and added RoktContracts
  • Raised iOS deployment target to 15.6 for plugin/example compatibility with SDK 9
  • Migrated iOS plugin bridge types from legacy MPRokt* APIs to SDK 9 Rokt* contract types
  • Added event payload mapping for new shoppable event types in RoktEventHandler (CartItemInstantPurchaseInitiated, CartItemInstantPurchaseFailure, InstantPurchaseDismissal, CartItemDevicePay)

Screenshots/Video

N/A

Checklist

  • I have performed a self-review of my own code.
  • I have made corresponding changes to the documentation.
  • I have added tests that prove my fix is effective or that my feature works.
  • I have tested this locally.

Additional Notes

Shoppable ads API surface changes are not included here and will be added in a follow-up PR.

Align iOS pod dependencies with the React Native SDK 9 setup to prepare Flutter for shoppable ads support.

Made-with: Cursor
Align the example iOS project target with SDK 9.0 pod requirements so CocoaPods can resolve updated mParticle dependencies.

Made-with: Cursor
Update iOS Rokt bridge types and config construction for the SDK 9/RoktContracts APIs while keeping the existing event subscription flow.

Made-with: Cursor
@cursor
Copy link
Copy Markdown

cursor bot commented Apr 14, 2026

PR Summary

Medium Risk
Moderate risk due to dependency upgrades (mParticle SDK 9) and contract/type migrations that can break build/runtime event bridging, plus raising the iOS deployment target to 15.6 which drops support for older devices.

Overview
Updates the iOS side of the Flutter plugin and example app to mParticle SDK 9 by switching from legacy MPRokt* APIs to RoktContracts types (e.g., RoktEmbeddedView, RoktEvent, RoktConfig).

Raises the iOS deployment target to 15.6 across the example project and podspec, and updates pod dependencies to the SDK 9 split (mParticle-Apple-SDK + mParticle-Apple-SDK-ObjC) while adding RoktContracts.

Adjusts Rokt placement selection and event bridging: removes the old callback object in favor of the new selectPlacements event callback, updates embedded size-change handling, and expands event-to-Flutter payload mapping for additional commerce/shoppable events.

Reviewed by Cursor Bugbot for commit 3d88fa4. Bugbot is set up for automated code reviews on this repo. Configure here.

@denischilik denischilik requested a review from thomson-t April 14, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant