Skip to main content
Three steps. These are the exact snippets shown on your app’s dashboard setup page — copy them from there if you’d rather paste your app’s real key and scheme straight in.
1

Add the package

Add the Tappify SDK to your app via Swift Package Manager:
Xcode resolves the latest release. If prompted for credentials, you need read access to the package — ask your Tappify admin and they’ll add you.
2

Start the SDK

One line at launch — for example in AppDelegate.application(_:didFinishLaunchingWithOptions:). appKey is a publishable key: it identifies your app and authorizes nothing.
3

Register the URL scheme

Lets activation links open your app directly when a teammate pairs a device. Add this to Info.plist — your dashboard’s setup page shows the exact scheme for your app; it’s tappify-<the same 12 hex characters from your appKey>.
That’s it. The SDK stays completely inert — no network calls, no UI, no capture — until a device is actually paired. The first time your app launches with the SDK started, your dashboard’s setup page flips from “waiting for first launch…” to connected.
appKey is a publishable key, the same way a Stripe pk_ key is publishable. It identifies your app; it doesn’t authorize anything by itself. All authorization happens server-side when a device pairs.
From here, pair a device from your dashboard and the pill appears on your TestFlight build. See Activating devices for how pairing works.

Optional

Tag SwiftUI screens

Fix mushy auto-generated screen names in composed SwiftUI views with .tappifyScreen(_:).

Team-wide pairing

Share one device pairing across every app your team ships.
If your app avoids runtime method swizzling, or your app/scene delegate doesn’t implement any URL-handling methods at all, see Tappify.handle(url:) in the API reference — the manual path for routing activation links yourself.