Mobile SDK feature matrix
Capability comparison across OpenCDP mobile client SDKs. Method names differ by platform; behavior is aligned.
Legend: Yes = supported · Platform = Android or iOS only · Optional = requires extra config
| Feature | Flutter | Android | iOS | React Native |
|---|---|---|---|---|
| Initialize + reinitialize | Yes | Yes | Yes | Yes |
| identify / track / clearIdentity | Yes | Yes | Yes | Yes |
| Screen + lifecycle auto-tracking | Yes | Yes | Yes | Yes (native) |
| registerDeviceToken | Yes | Yes | Yes | Yes |
| Push v2 metrics (delivered/open/click) | Yes | Yes | Yes | Yes (native) |
| Android actionable push UI | Yes | Yes | — | Yes (native) |
| iOS NSE background delivery | Yes | — | Yes | Yes (native) |
| In-app sync + SSE + polling | Yes | Yes | Yes | Yes (native) |
| In-app impression / click / dismiss | Yes | Yes | Yes | Yes |
| Gateway failover | Yes | Yes | Yes | Yes (native) |
| Offline POST queue | Yes | Yes | Yes | Yes (native) |
| Customer.io dual-write | Yes | Yes | Optional pod | Yes (native) |
Big-picture push (image_url) | Yes | Yes | Yes | Yes (native) |
| Action button icons (Android) | Yes | Yes | — | Yes (native) |
| Anonymous screen replay | Yes | Yes | Yes | Yes (native) |
| Debug failover / queue tools | Yes | Yes | Yes | Yes |
| Turnkey push setup helpers | Yes | Yes | Yes | Yes |
throwErrorsBack | Yes | Yes | Yes | Yes (native) |
removeInAppListener | Yes | Yes | Yes | Yes |
Platform-specific notes
Android only
- Actionable notifications with up to three action buttons and optional icon URLs
- Hybrid FCM dedup when both OS and SDK post notifications
- Big-picture collapsed layout depends on Android version — see Rich push images
iOS only
- Notification Service Extension required for rich images and background delivery metrics
- Optional
OpenCDP/CustomerIOpod subspec for Customer.io dual-write
React Native
- Core CDP runs in native Android/iOS modules (v2.0+)
- Requires Expo dev client or bare RN — Expo Go is not supported
- Push big-picture follows native platform behavior
Server SDK features (not on mobile)
These are available on Node, Python, Go, and PHP — not in mobile client SDKs:
sendEmail,sendPush,sendSmsfrom backendpinghealth check
Mobile apps use identify, track, and registerDeviceToken; the server sends push via API.