# Upgrade guide Use this initial checklist when upgrading from one version of the Meeting SDK to another. Guidance includes how to perform a smooth upgrade, understand versioning practices, and comply with Zoom's minimum SDK version policy. It includes some troubleshooting steps to ensure a successful upgrade across all supported platforms. ## Upgrade In most cases, upgrading your SDK is a straightforward process. You can replace the previous package with the latest version available on the Zoom Developer Portal. If you use a supported package manager, you can also upgrade through that tool, as our SDKs are published there. Because the SDK is already installed in your project, the upgrade process typically requires only a few steps, similar to the installation instructions. See the **installation instructions for your platform**, or click the tab for your platform for a summary. - **CDN** - Update your script tag to point to the newer SDK version. - **npm / registry installs** - See the npm documentation for [Updating packages downloaded from the registry](https://docs.npmjs.com/updating-packages-downloaded-from-the-registry). - [**CocoaPods**](https://guides.cocoapods.org/using/pod-install-vs-update.html) - Update the SDK version in your` Podfile`, then run `pod install` or `pod update`. - [**Swift Package Manager (SPM)**](https://www.swift.org/documentation/package-manager/) - Update the package version in Xcode or your `Package.swift` file. - [**Maven / Gradle**](https://developer.android.com/build/remote-repositories) - Update the SDK version in your `build.gradle` dependency block, then sync your project. - Replace the existing SDK package in your project with the new version downloaded from the [Marketplace](https://marketplace.zoom.us/user/build). ## How the Zoom Meeting SDKs are versioned The Zoom Meeting SDKs **generally follow** the principles of [semantic versioning](https://semver.org/), but there are occasional exceptions. In some releases, Zoom may introduce breaking changes in a minor version to maintain alignment across platforms or deliver required updates. - **Versions with new features and bug fixes** - Most releases introduce new features or bug fixes while remaining backward compatible with other [Meeting SDK versions](/changelog/meeting-sdk). - **Versions with new requirements** - A new release may introduce updated requirements or non-breaking changes. Prior versions continue functioning as-is. - **Versions with breaking changes** - Some releases include breaking changes that prevent interoperability with earlier versions. When this occurs, the changelog clearly documents the changes and migration steps. ### Why version the SDKs? Versioning allows you to rely on a stable set of functionality without unexpected changes. When you choose to upgrade, you can review the release details, evaluate any new requirements, and adjust your implementation before deploying the new version. It's not common for new versions to have new requirements or breaking changes. If they do, we mention it in the **[changelog](/changelog/)**, on the **[Developer Forum](https://devforum.zoom.us/c/announcements/37)**, and sometimes through an email sent to the Zoom account owner and administrators. ## SDK minimum version policy On a quarterly basis, Zoom enforces a required minimum version for each SDK. Versions below the published minimum will cease functioning in production, preventing customers from joining meetings. > **Version enforcement policy** > > See **[Version enforcements for developers](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0061130#Dev)** section of the **Zoom Software Quarterly Lifecycle Policy** for minimum versions tables and enforcement dates. **We recommend updating to the latest version whenever possible.** See the **SDK upgrade guide** for considerations when upgrading between versions. See the **[Changelog](/changelog/)** for a list of breaking changes. Account owners and administrators can also require end users to run a specified minimum version of the Zoom Meeting SDK. Contact Zoom Support to enable this option. This is separate from the general feature [requiring users to update Zoom](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0067165). ### Why is Zoom implementing an SDK minimum version policy? This policy aligns with the **[Zoom Software Quarterly Lifecycle Policy](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0061130)**. Its purpose is to make sure that developers can provide customers with the latest security enhancements and functionality. ### How often will the minimum SDK versions change? Zoom enforces new minimum versions quarterly, during the first weekend of **November**, **February**, **May**, and **August**. On the same schedule, Zoom announces the minimum versions that will be required for the _next_ enforcement period, providing a three-month notice window. See [Version enforcements for developers](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0061130#Dev) and the [Changelog](/changelog) for updates. ### How long will a given SDK version be supported? Zoom aims to support an SDK version for at least **nine months** before its end-of-life. However, off-cycle updates may be required to address major security or compliance issues. See the **[Changelog](/changelog)** for release notes and updates. ### Can developers see which SDK version their customers are using? Yes. Developers can use their SDK's version getter method to display the current version to customers. For example: - Android Meeting SDK: [`getVersion`](https://marketplacefront.zoom.us/sdk/meeting/android/us/zoom/sdk/ZoomSDK.html#getVersion%28android.content.Context%29) - macOS Meeting SDK: [`getSDKVersionNumber`](https://marketplacefront.zoom.us/sdk/meeting/macos/interface_zoom_s_d_k.html#a92cccd3c7175d98f55158b543cfc5ad8) Refer to the SDK reference guide for your specific platform for details. ### What happens if a major vulnerability is detected? If an urgent security or compliance issue arises, Zoom may issue a forced or prompted update outside the regular schedule. Developers may be required to update to the newest SDK version to maintain security. Zoom reserves the right to require off-cycle updates when necessary. ## Troubleshooting If you run into issues while developing or upgrading with the Zoom SDK, try the following recommendations. ### Verify your IDE version Most Zoom SDKs work with a wide range of IDE versions. However, some SDK releases may require, or work best with, specific IDE versions. Before upgrading your SDK, confirm that the target version is compatible with the IDE you're using. This is most commonly relevant for Xcode and Visual Studio. ### Confirm interface or protocol conformance If you encounter compilation errors after upgrading, ensure that your classes fully conform to the interfaces or protocols they implement. These errors often indicate new or modified methods that must be implemented in your subclass or delegate. Common examples include: - **Android:** ```plaintext class derived from SDK class must be either declared abstract or must implement abstract method ``` - **iOS / macOS:** ```plaintext name of your delegate class does not conform to interface ``` - **Windows:** ```plaintext Unknown symbol could not be exported ```