SDK Version Bump
Use this skill when updating the native Android or iOS SDK version wrapped by the AppsFlyer Unity plugin.
Goal
Perform a safe, consistent version bump across C#, Android, and iOS plugin layers, maintaining both billing library variants.
Workflow
- Identify which SDK is being bumped: Android SDK | iOS SDK | both
- Locate current versions:
- Version constant in
Assets/AppsFlyer/AppsFlyer.cs android-unity-wrapper/build.gradle(af-android-sdk, billing library v7/v8)- iOS podspec or dependency declarations
CHANGELOG.md
- Version constant in
- Update the native SDK version in all required places.
- Check both billing library variants (v7 and v8) — both must be updated consistently.
- Decide whether the Unity plugin version must also be bumped.
- Check whether changelog must be updated.
- Note that
deploy/.unitypackagefiles must be regenerated on release. - Summarize: old version, new version, files changed, billing library impact, compatibility risk, validation steps.
What to Check
Android
android-unity-wrapper/build.gradle—af-android-sdkandpurchase-connectordependencies (both use gradle.properties variables)android-unity-wrapper/gradle.properties—VERSION_NAME,VERSION_CODE,ANDROID_SDK_VERSION,ANDROID_PC_VERSIONAssets/AppsFlyer/Editor/AppsFlyerDependencies.xml—purchase-connectorandroidPackage version- Billing library v7 and v8 build variants — both must be updated
- ProGuard rules if new classes are added
AppsFlyerAndroidWrapper.java— version constants if any
iOS
- iOS podspec or pod dependency declarations
AppsFlyerDependencies.xml—PurchaseConnectoriosPod version (defaults to--ios-sdk-version, override with--ios-pc-version)README.mdanddocs/Introduction.md—iOS Purchase Connectorline must match iOS SDK versionAppsFlyeriOSWrapper.mm— version constants if any
Unity plugin
Assets/AppsFlyer/AppsFlyer.cs— version constantCHANGELOG.mddeploy/.unitypackagefiles (must regenerate after bump)
Output Format
Return:
- Summary
- SDK bumped: Android | iOS | Both
- Previous version → New version
- Billing library variants impacted: v7 | v8 | both
- Files updated
- Plugin version impact
- Changelog impact
.unitypackageregeneration required: Yes | No- Validation steps
- Compatibility risk
Rules
- iOS Purchase Connector defaults to iOS SDK version but can be overridden independently with
--ios-pc-version. - Android Purchase Connector version is independent — pass
--android-pc-versiontobump-version.shto update it; omit to leave it unchanged. - Both billing library variants must be updated together.
- Do not update only one place if multiple version declarations exist.
.unitypackagefiles are release artifacts — flag them as needing regeneration.- Prefer a minimal and consistent change set.