NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #4921 most downloaded on pub.dev
A Flutter plugin for communicating with Spotify App Remote SDK and Spotify Web Playback SDK.
Last release today
06 Oct 2026
Release timing varies
gaps range from 2 weeks to 1.8 years
Nearly every release is documented
notes for 24 of 24 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
35 releases · first in 2019
fix(ci): upgrade setup-java to v5 and gate pana job to PRs by @brim-borium in #276
Full Changelog: 4.0.1...v4.3.3
Packages with breaking changes:
Packages with other changes:
spotify_sdk - v4.0.2spotify_sdk_android - v4.3.2spotify_sdk_ios - v4.3.2spotify_sdk_platform_interface - v4.3.2spotify_sdk_web - v4.3.2One column per quarter.
fix(ci): prepare the iOS Spotify SDK before publishing by @ened in #273
Full Changelog: 4.0.0...spotify_sdk-v4.0.2
⚠️ Breaking Changes & Migration Guide
A major release bringing federated monorepo architecture, zero-configuration Android setup, Spotify Android Auth SDK 5.0.0, native iOS playback feature parity, typed domain exception hierarchy, Web Playback SDK with modern package:web / WASM support, and compatibility with Flutter 3.47.1 & Dart 3.13.
dart run spotify_sdk:android_setup from any setup scripts (deprecated & removed).include ':spotify-app-remote' from android/settings.gradle / android/settings.gradle.kts.android/spotify-app-remote folder if present from previous installations.com.spotify.android:auth:5.0.0. Manifest placeholders (redirectSchemeName, redirectHostName) are no longer used.android/app/src/main/AndroidManifest.xml, register RedirectUriReceiverActivity directly inside <application>:
<activity
android:name="com.spotify.sdk.android.auth.browser.RedirectUriReceiverActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="your-redirect-scheme"
android:host="your-redirect-host" />
</intent-filter>
</activity>SpotifyException)PlatformExceptions with a structured domain exception hierarchy inheriting from SpotifyException (SpotifyAuthenticationException, SpotifyConnectionException, SpotifyPlaybackException, SpotifyUnsupportedException, SpotifyRateLimitException, SpotifyUnknownException).SpotifyException subclasses instead of relying on PlatformException.code string matching:
try {
await SpotifySdk.connectToSpotifyRemote(...);
} on SpotifyAuthenticationException catch (e) {
// Authentication failure
} on SpotifyConnectionException catch (e) {
// Connection failure
} on SpotifyException catch (e) {
// General domain exception
}package:web (WASM Ready)dart:html to package:web and dart:js_interop.--wasm) builds in Flutter 3.47+.>=3.47.1 | Dart: >=3.13.0 <4.0.024, Gradle 9.7+, Kotlin 2.4.10+15.0+PlatformChannelGateway and centralized constants across Dart, Android (SpotifySdkConstants.kt), iOS (SpotifySdkConstants.swift), and Web.player_state, player_context, connection_status, capabilities, user_status).getCrossFadeState, switchToLocalDevice, universal links restoration handler, and enhanced repeat/shuffle control.very_good_analysis strict linting throughout.Full Changelog: 3.0.2...4.0.0
FEAT : upgrade to Flutter 3.47.1 and update dependencies ( #268 ).
Full Changelog: 4.0.0-dev.7...4.0.0-dev.8
refactor: synchronize native event channels and centralize Android constants by @brim-borium in #262
Full Changelog: 4.0.0-dev.6...4.0.0-dev.7
FEAT: update to gradle 9 (#261).
FEAT: release version 4.0.0 with native iOS playback features and improved pub.dev Pana compliance across all packages.
Packages with breaking changes:
getCrossFadeState, switchToLocalDevice).^4.0.0.Packages with breaking changes:
spotify_sdk - v4.0.0-dev.3spotify_sdk_android - v3.0.0spotify_sdk_ios - v3.0.0spotify_sdk_platform_interface - v3.0.0spotify_sdk_web - v3.0.0Packages with other changes:
REFACTOR: introduce PlatformChannelGateway to centralize method chann… (#256).
Note: This release has breaking changes.
FIX: resolve Web/WASM, SwiftPM and Kotlin scoring warnings on pub.dev (#254).
Note: This release has breaking changes.
The manual dart run spotify_sdk:android_setup command is deprecated and has been removed.
m2repository) within the plugin folder.dart run spotify_sdk:android_setup command is deprecated and has been removed.include ':spotify-app-remote' to their settings.gradle file. Existing users should delete the android/spotify-app-remote folder and remove it from settings.gradle.com.spotify.android:auth:5.0.0.manifestPlaceholders in build.gradle.com.spotify.sdk.android.auth.browser.RedirectUriReceiverActivity (note the .browser. in the package path) in their AndroidManifest.xml file.logger and http).^3.10.0 (was ^3.8.0) - enables modern language features (pattern matching, records, sealed classes).dart:html to package:web for modern type-safe browser APIs.very_good_analysis package.* chore: update deprications
BREAKING: isSpotifyAppActive is removed from iOS and Android (#222) and therefore removed from the sdk
isSpotifyAppActive is removed from iOS and Android (#222) and therefore removed from the sdkREFACTOR: introduce PlatformChannelGateway to centralize method chann… (#256).
Fix: prevent multiple iOS initializations
Feat: add set podcastPlaybackSpeed and switchToLocalDevice for android
BREAKING:feat: update spotify.android:auth from 1.2.6 to 2.1.0 and spotify.app.remote from 0.7.2 to 0.8.0 In the app/build.gradle add the following to
defaultConfig {
manifestPlaceholders = [redirectSchemeName: "spotify-sdk", redirectHostName: "auth"]
...
}
Fix: null album when getting advertisement on android
getAuthenticationToken is deprecated in favor of getAccessToken
spotify-auth SDK is now retrieved via Maven Central instead of being sourced from an AAR file
spotify-auth SDK:
':spotify-auth'adds SkipToIndex and getCapabilities
BREAKING: setShuffle now does not expect a named argument
FIX: resolve Web/WASM, SwiftPM and Kotlin scoring warnings on pub.dev (#254).
fixes image dimension exception on getImage
improves error reporting on iOS
adapts to breaking changes in the spotify android sdk (thanks itsMatoosh)
setShuffle() and setRepeatMode() APIs for Android (thanks Joran-Dob)accessToken as an optional parameter to connectToSpotifyRemote() (only supported on iOS)adds support for web (thanks itsMatoosh)
adds handling of unexpected disconnects from Spotify via subscribeConnectionStatus()-Stream(thanks itsMatoosh)
adds getImage to get an Image from any spotifyURI (thanks eddwhite)
spotify introduced some breaking changes: Rename classes from Authentication ClassName to Authorization ClassName
fixes wrong links and incorrect docs
android user api implementation finished
android player api implementation subscriptions finished
android player api implementation finished
* added instructions for android * fixed naming for modules
added the following implementations for android:
Your coding agent can read these notes before it upgrades. Set up the MCP server →