Not supported / Android
Android
There is no Android SDK. This page says what that means for your app today rather than leaving you to find out from a crash.
What happens if you try
Nothing silent, and nothing that reaches a user as a blank screen. UpliftFunnel.isSupported is false and every call throws UpliftFunnelUnsupportedPlatform. A widget left in the tree renders its unsupportedBuilder, or nothing.
// A Flutter app that also ships on Android: decide before you present.
if (UpliftFunnel.isSupported) {
await showOnboarding(); // rendered by the engine
} else {
await showOwnOnboarding(); // your screens, on Android
}What you can still use
Everything that is not the renderer is platform-neutral. The dashboard, the flow model, versions, experiments, webhooks and the analytics API do not care where a session ran — they simply will not see Android sessions, because none start.
In practice that means a cross-platform app ships Uplift Funnel onboarding on iOS and its own on Android, and reads iOS numbers in the dashboard. That is a real trade, and it is the honest reason to check this page before adopting the SDK.
Why it is not just a port
The renderer is one engine on purpose. Two implementations of the same layout agreed until they did not — a type ramp once drifted four values out of six with no test failing, and the difference reached devices. Shipping Android means a Compose renderer held to the same frame-for-frame parity corpus the Swift one is, not a second best-effort reading of the same document.
That is a program of work rather than a port, which is why there is no date on this page. When there is one, it will be here.
Tell us it matters
Android priority is decided by who is waiting on it. Mail hello@upliftfunnel.com with your app and your rough split — it is the input we actually weigh.