flutter_asa_attribution
A Flutter plugin for retrieving Apple Search Ads attribution tokens and campaign attribution details on iOS.
Features
- Retrieves the Apple Search Ads attribution token with
AdServices. - Requests campaign attribution details from Apple's AdServices attribution API.
- Supports iOS integration through CocoaPods and Swift Package Manager.
Platform support
| Platform | Support |
|---|---|
| iOS | iOS 14.3+ |
Apple Search Ads attribution is only available on iOS. Android, web, macOS, Windows, and Linux are not supported by this plugin.
Installation
Add the package to your pubspec.yaml:
dependencies:
flutter_asa_attribution: ^1.1.0
Then run:
flutter pub get
iOS setup
The plugin uses Apple's AdServices framework and requires iOS 14.3 or later.
Make sure your app includes a tracking usage description if you request tracking authorization elsewhere in your app:
<key>NSUserTrackingUsageDescription</key>
<string>Obtaining Attribution Data</string>
Usage
import 'package:flutter_asa_attribution/flutter_asa_attribution.dart';
final token = await FlutterAsaAttribution.instance.attributionToken();
final data = await FlutterAsaAttribution.instance.requestAttributionDetails();
requestAttributionDetails returns the attribution response as a
Map<String, dynamic>?. If Apple returns an empty or non-dictionary response,
the plugin returns an empty map.
Example response:
{
"attribution": true,
"orgId": 40669820,
"campaignId": 542370539,
"conversionType": "Download",
"clickDate": "2020-04-08T17:17Z",
"adGroupId": 542317095,
"countryOrRegion": "US",
"keywordId": 87675432,
"creativeSetId": 542317136
}
Notes
Apple's attribution API may return limited data depending on user privacy settings, campaign configuration, and Apple's attribution rules.