linkrunner 4.1.1
linkrunner: ^4.1.1 copied to clipboard
Flutter Package for linkrunner, track every click, download and dropoff for your app links
4.1.1 #
- Fixed a Swift compiler error that broke every iOS build on
4.0.1through4.1.0: the iOS bridge passed an optionalpaymentIdintoLinkrunnerKit.capturePayment, which has required a non-optionalStringsince LinkrunnerKit 4.0.0. Builds failed withValue of optional type 'String?' must be unwrapped to a value of type 'String'regardless of your Dart code.paymentIdis now unwrapped at the method-channel boundary. No API change —LRCapturePayment.paymentIdwas already required and non-empty validated, so correct callers are unaffected. Android was never affected.
4.1.0 #
-
Added support for Google Integrated Conversion Measurement (ICM) on iOS. The native SDK fetches Google's On-Device Measurement value during initialization and forwards it to Linkrunner. There is no Dart API to call, but ICM is opt-in: it stays inactive until you add Google's SDK to your app (see below). ICM is iOS-only for now; Android is unaffected.
-
To enable ICM on iOS, add Google's On-Device Measurement SDK to your app's
ios/Podfile:pod 'GoogleAdsOnDeviceConversion'If your app already uses the Firebase iOS SDK (11.14.0+) you have it and need nothing further. LinkrunnerKit detects the SDK at runtime rather than depending on it, so apps that skip this carry none of its weight — no extra dependency, no size increase. CocoaPods adds the required
-ObjCand-lc++linker flags for you, so Flutter apps have no Build Settings changes to make. To confirm it is live, initialize withdebug: trueand look forodm_available=truein the iOS logs;odm_available=falsemeans Google's SDK is not linked. -
Bumped native iOS SDK to
LinkrunnerKit 4.1.0(ICM plus the consent model) and native Android SDK toio.linkrunner:android-sdk:4.1.0(consent model only). -
Fixed the iOS podspec version, which had drifted to
3.4.0whilepubspec.yamlwas on4.0.1. Both now track the package version. -
setConsent(LRConsent(...))for Google Ads consent:isEEA,hasConsentForDataUsageandhasConsentForAdsPersonalization, eachConsentStatus.GRANTED/.DENIED/.UNKNOWN(field names match the native iOS and Android SDKs; they are sent asis_eea,ad_user_dataandad_personalization). Call it beforeinitand again whenever your CMP state changes. Omitted signals default to.UNKNOWNand are dropped from the payload rather than sent as a denial. Supported on iOS and Android.
4.0.3 #
- Bumped the native Android SDK to
io.linkrunner:android-sdk:4.0.2to prevent signup from sending an empty install instance ID when it runs concurrently with initialization.
4.0.2 #
- Fixed
setAdditionalDataon Android by aligning the native bridge argument key with Flutter and iOS.
4.0.1 #
- Exposed ad-network attribution fields in attribution data:
adNetworkCampaignId,adSetId,adSetName,adCreativeId,adCreativeName. - Bumped native Android SDK to
io.linkrunner:android-sdk:4.0.1and native iOS SDK toLinkrunnerKit 4.0.1.
4.0.0 #
- Breaking:
paymentIdis now required incapturePayment; the call throws before dispatch when it is missing - Bumped native Android SDK to
io.linkrunner:android-sdk:4.0.0 - Bumped native iOS SDK to
LinkrunnerKit 4.0.0
3.10.0 #
- Added
setCustomerUserId(userId)method to attach your own user identifier to the device afterinit()— once set, the id is stored on-device and automatically included in everytrackEventcall, so you no longer need to pass it on each event. Throws if the id is empty. - Bumped native Android SDK to
io.linkrunner:android-sdk:3.9.1and native iOS SDK toLinkrunnerKit 3.11.0for nativeuser_idauto-attach support
3.9.1 #
- Bumped native Android SDK to
io.linkrunner:android-sdk:3.8.1— token, signature key id, and signature secret key are now encrypted at rest in SharedPreferences using AES-256-GCM with a hardware-backed AndroidKeyStore key (StrongBox when available); legacy plaintext keys from prior versions are wiped atomically on the firstinit()after upgrade
3.9.0 #
- Added
handleDeeplink()method for re-engagement attribution tracking
3.8.0 #
- Added support for Netcore device GUID (netcoreDeviceGuid) field in user data collection
3.7.0 #
- Added eventData parameter to capture payment method to support meta commerce event manager
3.6.3 #
- Added support for Google Analytics Session ID (gaSessionId) field in user data collection
3.6.2 #
- Added support for Meta view through attribution
3.6.1 #
- Upgraded the native android version to fix obfuscation errors due to TypeToken class
3.6.0 #
- Upgraded the native iOS version to support apple search ads attribution
3.5.1 #
- Removed unused dependencies and modules
3.5.0 #
- Added support to pass disableAaid flag to Android SDK
3.4.0 #
- Added support to pass disableIdfa flag to iOS SDK
3.3.0 #
- Added Braze device ID and Google Analytics app instance ID fields to user data collection
3.2.1 #
- Added
setPushToken()function for push notification tracking - Added Android backup configuration files for proper data handling
- Enhanced SDK initialization with platform and version parameters
- Updated native SDK dependencies (iOS LinkrunnerKit to 3.2.0)
- Removed deprecated
getVersion()method - Improved cross-platform consistency and code cleanup
3.0.1 #
- Flutter package for Linkrunner.io