Skip to content

Add opt-in Swift Package Manager support for iOS native SDK#691

Open
al-af wants to merge 1 commit into
developmentfrom
dev/SPM-Support
Open

Add opt-in Swift Package Manager support for iOS native SDK#691
al-af wants to merge 1 commit into
developmentfrom
dev/SPM-Support

Conversation

@al-af
Copy link
Copy Markdown
Collaborator

@al-af al-af commented Jun 4, 2026

Introduce an opt-in mechanism to resolve the native AppsFlyer iOS SDK (core and Purchase Connector) via Swift Package Manager, aligning with the broader iOS and React Native ecosystem shift away from CocoaPods.

This change allows early adopters to configure their Podfile to use SPM for the native SDK, while the React Native plugin itself continues to be installed via CocoaPods. It includes:

  • Updates to react-native-appsflyer.podspec for conditional SPM resolution.
  • Comprehensive Docs/early-adopter/RN_NativeSDK_SPM.md guide.
  • A scripts/appsflyer_podfile.rb helper to embed SPM frameworks.
  • A scripts/spm/verify_podspec_spm_parity.rb script for consistency checks.
  • Documentation clarifications distinguishing plugin versioning from native SDK pinning.

Introduce an opt-in mechanism to resolve the native AppsFlyer iOS SDK (core and Purchase Connector) via Swift Package Manager, aligning with the broader iOS and React Native ecosystem shift away from CocoaPods.

This change allows early adopters to configure their Podfile to use SPM for the native SDK, while the React Native plugin itself continues to be installed via CocoaPods. It includes:
- Updates to `react-native-appsflyer.podspec` for conditional SPM resolution.
- Comprehensive `Docs/early-adopter/RN_NativeSDK_SPM.md` guide.
- A `scripts/appsflyer_podfile.rb` helper to embed SPM frameworks.
- A `scripts/spm/verify_podspec_spm_parity.rb` script for consistency checks.
- Documentation clarifications distinguishing plugin versioning from native SDK pinning.
@al-af al-af requested a review from pazlavi June 4, 2026 13:09
@al-af al-af self-assigned this Jun 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant