appsFlyer-flutter-plugin
AppsFlyer SDK용 Flutter 플러그인
- 스타
- 187
- 포크
- 140
- 최근 푸시(UTC)
- 2026. 9. 15.
- 프로젝트 상태
- 활성
원본 README
아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.
appsflyer-flutter-plugin

Flutter plugin for the AppsFlyer mobile attribution and analytics SDK on Android and iOS.
🛠 In order for us to provide optimal support, please contact AppsFlyer support through the Customer Assistant Chatbot for assistance with troubleshooting issues or product guidance.
To do so, please follow this article
SDK Versions
This plugin release bundles:
| Platform | RPC layer the plugin pins | AppsFlyer SDK it brings |
|---|---|---|
| Android | af-android-plugin-bridge v7.0.13 |
v7.0.1 |
| iOS | AppsFlyerRPC v7.0.13 |
v7.0.2 |
Since v7.0.0 the plugin integrates through the AppsFlyer RPC layer instead of
depending on the native SDK directly. On Android the SDK is resolved transitively
by the bridge — do not pin com.appsflyer:af-android-sdk yourself. On iOS the
podspec pins AppsFlyerFramework explicitly, and it must stay on the version
AppsFlyerRPC requires.
Purchase Connector versions
When Purchase Connector is enabled in your app:
- Android 2.2.0
- iOS 7.0.2
❗❗ Breaking changes when updating to v7.x.x ❗❗
The public Flutter API changed in this major release. For the native SDK versions this release resolves to, see SDK Versions above.
- Minimum supported versions: Flutter
3.35.0, Dart3.9.0(and earlier than4.0.0), Android API 21, and iOS 13.0. On Android the plugin also requires Kotlin Gradle Plugin2.0.21, Android Gradle Plugin8.9.1, Gradle8.11.1and JDK 17, matching the AppsFlyer Android SDK. Flutter3.35templates all of them — see doc/installation-guide.md.
Use AppsFlyerSdk.instance, call init(devKey:, appId:) (appId is required
on iOS and optional on Android), register the listeners you need with their
callbacks, and call start() from the session-ready callback:
final appsflyerSdk = AppsFlyerSdk.instance;
// If your app handles deep links, register before init(). Android decides once
// per install, while init() processes the launch intent, whether to request the
// deferred deep link — registering later skips it for that install permanently.
await appsflyerSdk.registerDeepLinkListener(onDeepLinking: (result) {
print('Deep link: ${result.deepLink?.deepLinkValue}');
});
await appsflyerSdk.init(
devKey: '<DEV_KEY>',
appId: '<APP_ID>',
);
await appsflyerSdk.registerSessionReadyListener(() async {
await appsflyerSdk.start();
});
All removed APIs, renamed APIs, lifecycle changes, and upgrade instructions are documented in doc/migration-guide.md.
AD_ID permission for Android
In v6.8.0 of the AppsFlyer SDK, we added the normal permission com.google.android.gms.permission.AD_ID to the SDK's AndroidManifest,
to allow the SDK to collect the Android Advertising ID on apps targeting API 33.
If your app is targeting children, you need to revoke this permission to comply with Google's Data policy.
You can read more about it in the Android SDK installation guide.
📖 Guides
사용 중인 의존성
의존성 목록 8 개
- flutter
{"sdk":"flutter"} - json_annotation
^4.9.0 - flutter_test개발 의존성
{"sdk":"flutter"} - test개발 의존성
^1.16.5 - mockito개발 의존성
^5.4.4 - flutter_lints개발 의존성
^5.0.0 - build_runner개발 의존성
^2.3.0 - json_serializable개발 의존성
^6.5.4
프로젝트에 맞는 저장소를 선택하려면?
사용 목적에 따라 검색하고 개발 활동을 비교한 뒤 원본 저장소에서 요구 사항을 확인하세요.
- 이름, 작성자 또는 설명으로 검색하고 기술 주제로 범위를 좁힙니다.
- 스타, 포크, 최근 푸시를 함께 비교하세요. 스타는 관심의 지표이며 품질을 보장하지 않습니다.
- 사용하기 전에 GitHub에서 README, 라이선스, Issues를 확인하세요.
출처 및 관리
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗