Skip to content

Conversation

@Dani-Koza-AF
Copy link
Collaborator

  • added a usage example of the api for testing.

- added a usage example of the api for testing.
@Dani-Koza-AF Dani-Koza-AF requested a review from al-af October 27, 2024 15:49
@Dani-Koza-AF Dani-Koza-AF added the bug fix fixing a reported bug label Oct 27, 2024
Copy link
Collaborator

@al-af al-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!

@Dani-Koza-AF Dani-Koza-AF merged commit b85b1a4 into development Oct 28, 2024
Dani-Koza-AF added a commit that referenced this pull request Jan 16, 2025
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
Dani-Koza-AF added a commit that referenced this pull request Aug 10, 2025
* Purchase connector for flutter

* runOnUi

* Nullable

* handle callbacks

* ui thread callback

* swift bridge file

* register callback

* docs

* fixed the issue with MediationNetwork enums on Android

- added a usage example of the api for testing.

* This should fix the NullPointerException

* Delivery 76214/update purchase connector version (#363)

* bumped up PC versions

* set back ios version

* adding a note on the supported StoreKit to docs

* typo fix

* Squashed commit of the following:

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

* closing potential memory leaks

* removed duplicated declarations =

* updated example project dependencies

Aligned Flutter's Android compileOptions to AppsFlyer's Android SDK.

* Push notification data collection documentation updates (#381)

* updated BasicIntegration.md

* docs: updated push notification API's

* reverting addition of PC

* post revert fixes

* lint

* Fixes of tests and typos

* Dev/update manual consent api (#383)

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.

* fixed Locale issue by forcing toUpperCase(Locale.ENGLISH) (#395)

- Expanded the unit–tests to verify not only that the right native method is invoked, but also that the correct arguments are passed.

* Doc fix (#400)

doc fix - broken link

* Add purchase connector to development branch (#402)

* removed duplicated declaration

* Update .gitignore for purchase connector feature

* Add complete Purchase Connector implementation

- Add Purchase Connector support for Android and iOS platforms
- Implement conditional compilation with include/exclude source sets
- Add comprehensive Dart API with type-safe models
- Include platform-specific error handling and validation
- Add Purchase Connector documentation
- Support for both in-app purchases and subscriptions
- Zero impact when disabled via gradle/podfile flags

New files:
- Complete lib/src/purchase_connector/ Dart implementation
- Android: include/exclude-connector source sets with ConnectorWrapper
- iOS: PurchaseConnectorPlugin.swift with conditional compilation
- Documentation: PurchaseConnector.md

Modified integration points:
- Android: build.gradle, AppsflyerSdkPlugin.java
- iOS: appsflyer_sdk.podspec with subspecs architecture
- Flutter: appsflyer_sdk.dart main export file

* Complete Purchase Connector integration with code generation

- Add missing Purchase Connector constants and AFMediationNetwork enum
- Update pubspec.yaml with required dependencies (json_annotation, build_runner, json_serializable)
- Generate JSON serialization code for all Purchase Connector models
- Fix all compilation errors and undefined references
- All 39 tests passing ✅
- Purchase Connector fully functional with type-safe models

Generated files:
- lib/appsflyer_sdk.g.dart - JSON serialization support
- All Purchase Connector model serialization methods

Dependencies added:
- json_annotation: ^4.9.0 (already present)
- build_runner: ^2.3.0
- json_serializable: ^6.5.4

* setting the proper SDK versions

* documentation small fix

* restore and solve code conflicts and ghost code

Aligned with development

* Immediate actions to prevent NullPointerExceptions (#403)

1. Fixed startSDKwithHandler() method: Null checks moved inside lambda execution
2. Fixed runOnUIThread() method: Added null check for mCallbackChannel.
3. Immediately return initSdk method when dev key is missing.

* Latest release updates - Docs + new API for Android (#406)

* add disableAppSetId() method for AppSet ID opt-out

* added a simple test for the new api

* docs

* another doc update

* documents fix lint

* doc lint

* doc

* doc fix

* last time doc fix

* docs

* rules for cursor

* Fix Android Purchase Connector compilation issue

- Add missing AF_PURCHASE_CONNECTOR_CHANNEL and all Purchase Connector constants to Android AppsFlyerConstants.java
- Update Android plugin version to 6.17.1
- Resolves 'Unresolved reference: AF_PURCHASE_CONNECTOR_CHANNEL' error when appsflyer.enable_purchase_connector=true

Issue: Kotlin code was referencing constants that only existed in Dart file but not in Android Java constants file.

* Attempt to fix iOS

* missing constant usage added

* logging added to find out problems

* trying to fix iOS

* all works now, manual test passed

---------

Co-authored-by: Paz Lavi <paz.lavi@appsflyer.com>
Dani-Koza-AF added a commit that referenced this pull request Aug 24, 2025
…2 API (Beta) (#411)

* Purchase connector for flutter

* runOnUi

* Nullable

* handle callbacks

* ui thread callback

* swift bridge file

* register callback

* docs

* fixed the issue with MediationNetwork enums on Android

- added a usage example of the api for testing.

* This should fix the NullPointerException

* Delivery 76214/update purchase connector version (#363)

* bumped up PC versions

* set back ios version

* adding a note on the supported StoreKit to docs

* typo fix

* Squashed commit of the following:

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

* closing potential memory leaks

* removed duplicated declarations =

* updated example project dependencies

Aligned Flutter's Android compileOptions to AppsFlyer's Android SDK.

* Push notification data collection documentation updates (#381)

* updated BasicIntegration.md

* docs: updated push notification API's

* reverting addition of PC

* post revert fixes

* lint

* Fixes of tests and typos

* Dev/update manual consent api (#383)

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.

* fixed Locale issue by forcing toUpperCase(Locale.ENGLISH) (#395)

- Expanded the unit–tests to verify not only that the right native method is invoked, but also that the correct arguments are passed.

* Doc fix (#400)

doc fix - broken link

* Add purchase connector to development branch (#402)

* removed duplicated declaration

* Update .gitignore for purchase connector feature

* Add complete Purchase Connector implementation

- Add Purchase Connector support for Android and iOS platforms
- Implement conditional compilation with include/exclude source sets
- Add comprehensive Dart API with type-safe models
- Include platform-specific error handling and validation
- Add Purchase Connector documentation
- Support for both in-app purchases and subscriptions
- Zero impact when disabled via gradle/podfile flags

New files:
- Complete lib/src/purchase_connector/ Dart implementation
- Android: include/exclude-connector source sets with ConnectorWrapper
- iOS: PurchaseConnectorPlugin.swift with conditional compilation
- Documentation: PurchaseConnector.md

Modified integration points:
- Android: build.gradle, AppsflyerSdkPlugin.java
- iOS: appsflyer_sdk.podspec with subspecs architecture
- Flutter: appsflyer_sdk.dart main export file

* Complete Purchase Connector integration with code generation

- Add missing Purchase Connector constants and AFMediationNetwork enum
- Update pubspec.yaml with required dependencies (json_annotation, build_runner, json_serializable)
- Generate JSON serialization code for all Purchase Connector models
- Fix all compilation errors and undefined references
- All 39 tests passing ✅
- Purchase Connector fully functional with type-safe models

Generated files:
- lib/appsflyer_sdk.g.dart - JSON serialization support
- All Purchase Connector model serialization methods

Dependencies added:
- json_annotation: ^4.9.0 (already present)
- build_runner: ^2.3.0
- json_serializable: ^6.5.4

* setting the proper SDK versions

* documentation small fix

* restore and solve code conflicts and ghost code

Aligned with development

* Immediate actions to prevent NullPointerExceptions (#403)

1. Fixed startSDKwithHandler() method: Null checks moved inside lambda execution
2. Fixed runOnUIThread() method: Added null check for mCallbackChannel.
3. Immediately return initSdk method when dev key is missing.

* Latest release updates - Docs + new API for Android (#406)

* add disableAppSetId() method for AppSet ID opt-out

* added a simple test for the new api

* docs

* another doc update

* documents fix lint

* doc lint

* doc

* doc fix

* last time doc fix

* docs

* Updated to AppsFlyer SDK v6.17.3 for both Android and iOS (#410)

* iOS >> Added support for Setting StoreKit2 properly

* versions bump

* Dart + Android implementation

* iOS implementation

* docs update

* purchase connector doc update for StoreKitV2 support

---------

Co-authored-by: Paz Lavi <paz.lavi@appsflyer.com>
Dani-Koza-AF added a commit that referenced this pull request Nov 2, 2025
* Purchase connector for flutter

* runOnUi

* Nullable

* handle callbacks

* ui thread callback

* swift bridge file

* register callback

* docs

* fixed the issue with MediationNetwork enums on Android

- added a usage example of the api for testing.

* This should fix the NullPointerException

* Delivery 76214/update purchase connector version (#363)

* bumped up PC versions

* set back ios version

* adding a note on the supported StoreKit to docs

* typo fix

* Squashed commit of the following:

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

* closing potential memory leaks

* removed duplicated declarations =

* updated example project dependencies

Aligned Flutter's Android compileOptions to AppsFlyer's Android SDK.

* Push notification data collection documentation updates (#381)

* updated BasicIntegration.md

* docs: updated push notification API's

* reverting addition of PC

* post revert fixes

* lint

* Fixes of tests and typos

* Dev/update manual consent api (#383)

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.

* fixed Locale issue by forcing toUpperCase(Locale.ENGLISH) (#395)

- Expanded the unit–tests to verify not only that the right native method is invoked, but also that the correct arguments are passed.

* Doc fix (#400)

doc fix - broken link

* Add purchase connector to development branch (#402)

* removed duplicated declaration

* Update .gitignore for purchase connector feature

* Add complete Purchase Connector implementation

- Add Purchase Connector support for Android and iOS platforms
- Implement conditional compilation with include/exclude source sets
- Add comprehensive Dart API with type-safe models
- Include platform-specific error handling and validation
- Add Purchase Connector documentation
- Support for both in-app purchases and subscriptions
- Zero impact when disabled via gradle/podfile flags

New files:
- Complete lib/src/purchase_connector/ Dart implementation
- Android: include/exclude-connector source sets with ConnectorWrapper
- iOS: PurchaseConnectorPlugin.swift with conditional compilation
- Documentation: PurchaseConnector.md

Modified integration points:
- Android: build.gradle, AppsflyerSdkPlugin.java
- iOS: appsflyer_sdk.podspec with subspecs architecture
- Flutter: appsflyer_sdk.dart main export file

* Complete Purchase Connector integration with code generation

- Add missing Purchase Connector constants and AFMediationNetwork enum
- Update pubspec.yaml with required dependencies (json_annotation, build_runner, json_serializable)
- Generate JSON serialization code for all Purchase Connector models
- Fix all compilation errors and undefined references
- All 39 tests passing ✅
- Purchase Connector fully functional with type-safe models

Generated files:
- lib/appsflyer_sdk.g.dart - JSON serialization support
- All Purchase Connector model serialization methods

Dependencies added:
- json_annotation: ^4.9.0 (already present)
- build_runner: ^2.3.0
- json_serializable: ^6.5.4

* setting the proper SDK versions

* documentation small fix

* restore and solve code conflicts and ghost code

Aligned with development

* Immediate actions to prevent NullPointerExceptions (#403)

1. Fixed startSDKwithHandler() method: Null checks moved inside lambda execution
2. Fixed runOnUIThread() method: Added null check for mCallbackChannel.
3. Immediately return initSdk method when dev key is missing.

* Latest release updates - Docs + new API for Android (#406)

* add disableAppSetId() method for AppSet ID opt-out

* added a simple test for the new api

* docs

* another doc update

* documents fix lint

* doc lint

* doc

* doc fix

* last time doc fix

* docs

* Updated to AppsFlyer SDK v6.17.3 for both Android and iOS (#410)

* iOS >> Added support for Setting StoreKit2 properly

* versions bump

* Dart + Android implementation

* iOS implementation

* docs update

* purchase connector doc update for StoreKitV2 support

* Added an important note to deep-links docs (#416)

* versions bumped + docs updated (#417)

* Setting up the full CI/CD (#419)

* test: verify CI workflow (#420)

* test: verify CI workflow

* fixed Flutter Version determination

* flutter analyze fixes

* more flutter analyze fixes for example app

* updated flutter analyze command

* format code with dart format

* Fix iOS CI order and increase gradle heap size

* putting back important file for build testing with iOS

* example project update Podfile

* CI fix - Jira ntegration

* CI fix

* yet another fix to CI

* Hope it's the last CI fix

* fix: update Jira API to use /search/jql endpoint (fixes HTTP 410)

* readme update and dart analyze fix

fix in example project only

* verions bumps + modernized to flutter lint

* Documentation Updates - regarding push notifications

* bumped up Android version (#425)

* refine CI

* chore: bump version to 6.17.7+1-rc1

---------

Co-authored-by: Paz Lavi <paz.lavi@appsflyer.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug fix fixing a reported bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants