Skip to content

Release 6.17.9#440

Merged
Kobikg78 merged 75 commits intomasterfrom
releases/6.x.x/6.17.x/6.17.9-rc1
Mar 26, 2026
Merged

Release 6.17.9#440
Kobikg78 merged 75 commits intomasterfrom
releases/6.x.x/6.17.x/6.17.9-rc1

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions bot commented Mar 26, 2026

Production Release 6.17.9

Status: ✅ Ready for manual merge

Version updated: 6.17.9-rc1 → 6.17.9


Release 6.17.9

  • Android SDK: 6.17.6
  • iOS SDK: 6.17.9

This PR was opened by the RC workflow.


Next steps:

  1. ✅ QA approved (label added)
  2. ✅ Version updated to production (6.17.9)
  3. Awaiting manual merge by a maintainer
  4. ⏳ Production release will trigger automatically after merge

pazlavi and others added 30 commits June 13, 2024 16:24
- added a usage example of the api for testing.
…n-network-value-fix

Fixed the issue with MediationNetwork enums on Android
…null-pointer-exception

This should fix the NullPointerException
* bumped up PC versions

* set back ios version
commit fa71c23
Merge: f420460 4f4ee27
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Thu Oct 31 15:16:50 2024 +0200

    Merge remote-tracking branch 'origin/development' into development

commit f420460
Author: Dani Koza <103039399+Dani-Koza-AF@users.noreply.github.com>
Date:   Wed Oct 30 15:50:41 2024 +0200

    Releases/6.x.x/6.15.x/6.15.2 rc1 (#358)

    * fixed the issue with MediationNetwork enums on Android

    * Added a usage example of the logAdRevenue api for testing.

    * Fix to the NullPointerException some clients face.

    * Versioning and change log

commit 4f4ee27
Merge: a58a49b 25fb530
Author: Dani Koza <103039399+Dani-Koza-AF@users.noreply.github.com>
Date:   Wed Oct 30 14:47:17 2024 +0200

    Merge pull request #357 from AppsFlyerSDK/DELIVERY-63011/fix-android-null-pointer-exception

    This should fix the NullPointerException

commit 25fb530
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Wed Oct 30 14:26:26 2024 +0200

    This should fix the NullPointerException

commit a58a49b
Merge: 6213341 b85b1a4
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Mon Oct 28 12:30:10 2024 +0200

    Merge remote-tracking branch 'origin/development' into development

commit b85b1a4
Merge: 82764a4 6529458
Author: Dani Koza <103039399+Dani-Koza-AF@users.noreply.github.com>
Date:   Mon Oct 28 12:15:32 2024 +0200

    Merge pull request #353 from AppsFlyerSDK/dev/DELIVERY-71973/mediation-network-value-fix

    Fixed the issue with MediationNetwork enums on Android

commit 6529458
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Sun Oct 27 17:47:00 2024 +0200

    fixed the issue with MediationNetwork enums on Android

    - added a usage example of the api for testing.

commit 6213341
Merge: 3272d7e 82764a4
Author: Dani-Koza-AF <103039399+Dani-Koza-AF@users.noreply.github.com>
Date:   Wed Sep 4 15:51:28 2024 +0300

    Merge pull request #338 from AppsFlyerSDK/releases/6.x.x/6.15.x/6.15.1-rc1

    Releases/6.x.x/6.15.x/6.15.1 rc1

commit 82764a4
Merge: 3272d7e 6b76d63
Author: Dani-Koza-AF <103039399+Dani-Koza-AF@users.noreply.github.com>
Date:   Wed Sep 4 15:15:03 2024 +0300

    Merge pull request #337 from AppsFlyerSDK/dev/DELIVERY-67805/Update-Plugin-to-v6.15.1

    Update plugin to v6.15.1

commit 6b76d63
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Wed Sep 4 15:13:04 2024 +0300

    Added missing info in docs

commit e7d4dc6
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Wed Sep 4 14:17:28 2024 +0300

    Added documentation

commit 9f90c8e
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Tue Sep 3 17:48:33 2024 +0300

    Improvement of Android side impl

commit 079ccad
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Tue Sep 3 17:22:48 2024 +0300

    iOS side impl

    - Helper func to get the correct enum properly.
    - requireNonNullArgumentWithCall to make sure we actually get the arguments.
    - Lots of null safety checks due to testing failures encountered.

commit 4a3a0d6
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Mon Sep 2 14:48:30 2024 +0300

    Android side impl

    - Flutter didn't like the fact that we pass enums, had to change mediation network to String, handled later on native side.
    - Added an helper method to ensure null safety,  hopefully will be embraced by other method in the future.

commit d74054e
Author: Dani-Koza-AF <dani.ko@appsflyer.com>
Date:   Sun Sep 1 16:43:24 2024 +0300

    flutter side impl

    - New Enum introduced.
    - New API logAdRevenue.
    - New AdRevenueData class.
    - Upgraded Dart SDK versions limits a bit to start from 2.17.0 .

commit 3272d7e
Merge: 95a4348 248dcf5
Author: liaz-af <61788924+liaz-af@users.noreply.github.com>
Date:   Mon Aug 19 22:35:24 2024 +0300

    Merge pull request #336 from dori-af/dori/udl-note

    Deep link UDL - added a note

commit 248dcf5
Author: Dori Frost <dori.frost@appsflyer.com>
Date:   Sun Aug 18 16:35:07 2024 +0300

    Deep link UDL - added a note

    Per Slack: https://appsflyer.slack.com/archives/C5RDRS58X/p1723186908673099
Aligned Flutter's Android compileOptions to AppsFlyer's Android SDK.
* updated BasicIntegration.md

* docs: updated push notification API's
New consent api and more
- setConsentData is now deprecated.
- setConsentDataV2 is the new and recommended way to set manual user consent.
- Add getVersionNumber api, returns the plugin version.
- version bumps.
- typos fix.
- doc updates.
- bug fix.
Dani-Koza-AF and others added 15 commits December 29, 2025 17:00
…ing (#429)

* SDK updates deprecate V1 purchase validation, improve iOS error handling

SDK Version Updates:
- Update Android SDK from 6.17.4 to 6.17.5
- Update iOS SDK from 6.17.7 to 6.17.8
- Update iOS Purchase Connector from 6.17.7 to 6.17.8
- Bump plugin version to 6.17.8 across all platforms

API Changes:
- Deprecate validateAndLogInAppAndroidPurchase (V1)
- Deprecate validateAndLogInAppIosPurchase (V1)
- Enhance iOS error handling for validateAndLogInAppPurchaseV2 with NSError parsing (code, domain, userInfo)

Documentation Updates:
- Remove "Beta" label from validateAndLogInAppPurchaseV2 API
- Mark V1 purchase validation APIs as Deprecated
- Add comprehensive PlatformException error handling examples
- Add iOS token format explanation for uninstall measurement
- Add cross-platform Firebase Messaging example for uninstall tokens

* lint

* CHANGELOG update

* fix implementation for validateAndLogInAppPurchaseV2
- Remove auto-merge (not allowed by org rules)
- Instead, update release branch to remove -rc suffix BEFORE merge
- Human manually merges after version is cleaned up
- Production release triggers on PR merge as before
GitHub Actions doesn't allow secrets in if conditions. Using
continue-on-error instead to gracefully handle missing webhook.
…upport

The plugin only implemented AppDelegate-based lifecycle methods for deep
linking. Since Flutter 3.41 auto-migrates apps to UIScene by default,
UIKit no longer calls application:openURL:options: or
application:continueUserActivity: — routing everything through the scene
delegate instead. This caused deep links to be silently dropped on iOS
apps using Flutter 3.41+.

Fix:
- Adopt FlutterSceneLifeCycleDelegate in AppsflyerSdkPlugin
- Register via [registrar addSceneDelegate:instance] (iOS 13+)
- Add scene:openURLContexts: for warm-start URI-scheme deep links
- Add scene:willConnectToSession:options: for cold-start URI-scheme deep links
- Add scene:continueUserActivity: for Universal Links via UIScene

Verified on iOS 18.4 simulator with Flutter 3.41.4. Both cold-start and
warm-start deep link callbacks now reach the plugin correctly without
requiring any app-side workaround.

Fixes: DELIVERY-114618

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- getViewController: replaced deprecated UIApplication.delegate.window
  (returns nil under UIScene) with UIWindowScene lookup on iOS 13+,
  falling back to the AppDelegate window for older iOS versions.

- pubspec.yaml: bumped Flutter minimum SDK from >=1.10.0 to >=3.38.0
  as required by the Flutter plugin migration guide for adopting
  FlutterSceneLifeCycleDelegate.

Addresses review comments on PR #438.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The example app declares .env as a Flutter asset (needed for flutter_dotenv),
but .env is gitignored and not present in CI. This caused both Android and iOS
builds to fail with "No file or variants found for asset: .env".

Add a CI step to create a minimal dummy .env before each platform build.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Instead of hard-requiring Flutter >=3.38.0, wrap FlutterSceneLifeCycleDelegate
protocol adoption and addSceneDelegate with #if __has_include guards.

- Flutter >=3.38 (header present): UIScene delegate registered, all three
  scene callbacks active — deep links work under UIScene migration.
- Flutter <3.38 (header absent): guard skips it at compile time, plugin
  falls back to application:openURL: — backward compatible.

pubspec.yaml reverts flutter constraint to >=1.10.0 (no breaking change).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Two fixes based on review feedback:

1. openURLContexts / willConnectToSession: pass sourceApplication from
   UIOpenURLContext.options instead of empty @{}, so AppsFlyer SDK receives
   correct attribution metadata on URI-scheme deep links.

2. willConnectToSession: also iterate connectionOptions.userActivities and
   forward NSUserActivityTypeBrowsingWeb entries to continueUserActivity:,
   fixing cold-start Universal Links under UIScene (the core reported issue).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…-lifecycle

fix(ios): adopt FlutterSceneLifeCycleDelegate for UIScene deep link support
Dani-Koza-AF
Dani-Koza-AF previously approved these changes Mar 26, 2026
Copy link
Copy Markdown
Collaborator

@Dani-Koza-AF Dani-Koza-AF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

- Keep 6.17.9-rc1 version across pubspec.yaml, podspec, README
- Keep Android SDK 6.17.6 and iOS SDK 6.17.9 version bumps
- Keep UIScene fixes in AppsflyerSdkPlugin.h and .m
- Keep improved promote-release.yml workflow from release branch

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@Kobikg78 Kobikg78 dismissed Dani-Koza-AF’s stale review March 26, 2026 12:33

The merge-base changed after approval.

- Fixed rc-release and promote-release workflows to use correct sed patterns matching actual constant names (PLUGIN_VERSION, kAppsFlyerPluginVersion) and target the right files (AppsFlyerConstants.java, appsflyer_constants.dart, AppsflyerSdkPlugin.h)
- Added missing Dart constant and Purchase Connector README updates to CI
- Fixed notify-team job to checkout the release branch instead of default
- Bumped PLUGIN_VERSION to 6.17.9 across Android, Dart, and iOS constants;
 - Added CHANGELOG entry and updated README Purchase Connector iOS version
@Dani-Koza-AF Dani-Koza-AF self-requested a review March 26, 2026 15:01
Dani-Koza-AF
Dani-Koza-AF previously approved these changes Mar 26, 2026
Copy link
Copy Markdown
Collaborator

@Dani-Koza-AF Dani-Koza-AF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all Docs and CI fixed and version tested

@github-actions
Copy link
Copy Markdown
Contributor Author

🚀 Ready for Production Release

The release branch has been updated:

  • Version: 6.17.9 (removed -rc suffix)
  • All version files updated

Next Steps

  1. Review the changes in this PR
  2. Merge this PR when ready
  3. The production release workflow will automatically:
    • Publish 6.17.9 to pub.dev
    • Create GitHub release
    • Send notifications

⚠️ Note: This PR requires manual merge due to branch protection rules.

@Kobikg78 Kobikg78 requested a review from af-fess March 26, 2026 15:22
@Kobikg78 Kobikg78 merged commit a523ad9 into master Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants