Versions & Changelog
The current LinkTrail SDK versions, the minimum OS each supports, which native SDKs the wrappers pin, the breaking changes, and where each changelog lives.
The versions the docs are written against — each one is what its registry serves today: CocoaPods and the GitHub release for iOS, Maven Central for Android, npm for React Native and pub.dev for Flutter. Every install line in these docs pins the version below.
| SDK | Package | Current | Minimum | Changelog |
|---|---|---|---|---|
| iOS | LinkTrailSDK (Swift Package Manager, CocoaPods) | 0.0.12 | iOS 15, Xcode 15 / Swift 5.9 | Releases |
| Android | io.linktrail:sdk (Maven Central) | 0.0.5 | minSdk 26 | Releases |
| React Native | linktrail-react-native (npm) | 0.0.4 | React Native 0.76+ (New Architecture), iOS 15.1, minSdk 26 | CHANGELOG |
| Flutter | linktrail_flutter (pub.dev) | 0.0.4 | iOS 15, minSdk 26 | CHANGELOG |
What the wrappers run on
React Native and Flutter call the native SDKs, so their behaviour — consent, the click token, the log lines — is the native SDKs'. Each pins a version range:
| Wrapper | iOS SDK | Android SDK |
|---|---|---|
| React Native 0.0.4 | ~> 0.0.11 in its podspec — a fresh pod install resolves 0.0.12 | io.linktrail:sdk:0.0.5 |
| Flutter 0.0.4 | ~> 0.0.12 in its podspec | io.linktrail:sdk:0.0.5 |
A React Native project with an older Podfile.lock can still be on the earlier iOS SDK. Run pod update LinkTrailSDK in ios/ to move it to the current one.
Breaking changes
| SDK | Version | What changed | What to do |
|---|---|---|---|
| iOS | 0.0.12 | The install is held until your app records a consent decision. With the default requireConsent: true, an app that never calls setConsent sends nothing: no install, no attribution, no deferred link. A tap on LinkTrailPasteButton now records consent (grantsConsent: true). | Wire both answers of your consent prompt to setConsent, or pass requireConsent: false if consent is collected elsewhere. Under a CMP, use LinkTrailPasteButton(grantsConsent: false). |
| Android | 0.0.5 | The install is held until a consent decision, instead of an unattributed install going out before the prompt is answered. | The same: call setConsent(true) or setConsent(false) once your prompt resolves. |
| iOS | 0.0.10 | readClipboardOnInstall was removed and replaced by clickTokenSource, whose default .pasteButton reads the click token only when the user taps a paste control. | Render LinkTrailPasteButton, or pass .automatic to keep reading the clipboard at install. |
Each release's full notes are in the changelog links above. Upgrading across the consent change? Consent & privacy is the model all four SDKs now share.