spotikit 2.0.3 copy "spotikit: ^2.0.3" to clipboard
spotikit: ^2.0.3 copied to clipboard

PlatformAndroid

Flutter plugin for Spotify App Remote integration on Android.

2.0.3 #

🔐 Full OAuth Auth Flow — February 22, 2026 #

  • Introduced AuthManager.kt — handles the full Spotify OAuth flow using the spotify-auth SDK before connecting the App Remote
  • SpotikitPlugin now registers AuthManager as a PluginRegistry.ActivityResultListener to receive the OAuth result
  • connectToSpotify() now triggers AuthorizationClient.openLoginActivity() first; on success the App Remote connection is established automatically
  • Added required OAuth scopes: streaming, user-read-playback-state, user-modify-playback-state, user-read-currently-playing
  • Added spotify-auth as an api dependency in android/build.gradle
  • Registered com.spotify.sdk.android.auth.LoginActivity in the example app's AndroidManifest.xml
  • Added isConnected() helper to RemoteManager to skip re-auth when already connected
  • Fixes UserNotAuthorizedException — "Explicit user authorization is required to use Spotify"

2.0.2 #

🐛 Gson & Activity Context Fix — February 22, 2026 #

  • Added com.google.code.gson:gson:2.10.1 to android/build.gradle
  • Fixes NoClassDefFoundError: Lcom/google/gson/GsonBuilder — the Spotify App Remote SDK requires Gson at runtime but does not bundle it
  • RemoteManager now uses the Activity context (when available) for SpotifyAppRemote.connect() so that showAuthView(true) can launch UI

2.0.1 #

🛠 Example App Update — February 22, 2026 #

  • Updated example app to remove flutter_dotenv and all auth/Web API references
  • Credentials are now set as plain constants at the top of example/lib/main.dart
  • Quick Play chips now use hardcoded Spotify URIs instead of Web API search
  • Removed .env asset and flutter_dotenv dependency from example pubspec.yaml

2.0.0 #

🚀 App Remote Only — February 22, 2026 #

This is a breaking change release. Spotikit now wraps only the Spotify App Remote SDK. All Spotify Web API functionality and OAuth authentication have been removed.

⚠️ Breaking Changes

  • initialize() no longer accepts clientSecret, scope, or authenticate parameters. Only clientId, redirectUri, and the optional connectToRemote flag remain.
  • Removed methods: authenticateSpotify(), getAccessToken(), getPlayingTrackFull(), playSong()
  • Removed streams: accessTokenStream, onAuthStateChanged
  • Removed models: SpotifyTrack, AlbumImage, AuthState (and subclasses AuthSuccess, AuthFailure, AuthCancelled)
  • Removed Dart package: api/spotify_api.dart (SpotifyApi class)
  • Removed pub dependencies: dio, path, yaml

Changes

  • initialize() now only requires clientId and redirectUri
  • SpotikitPlugin.kt stripped of all auth code — no more AuthManager, EventChannel, or PluginRegistry.ActivityResultListener
  • AuthManager.kt deleted
  • android/build.gradle now only depends on spotify-app-remote (removed spotify-auth, okhttp3, kotlinx-coroutines, gson, security-crypto)

Migration Guide

Before (v1.x):

await spotikit.initialize(
  clientId: 'id',
  clientSecret: 'secret',
  redirectUri: 'myapp://callback',
  scope: 'user-read-playback-state ...',
);
spotikit.onAuthStateChanged.listen((state) { ... });
await spotikit.authenticateSpotify();

After (v2.x):

await spotikit.initialize(
  clientId: 'id',
  redirectUri: 'myapp://callback',
);
await spotikit.connectToSpotify();

1.0.0 #

🎉 First Stable Release — January 23, 2026 #

This marks the first stable release of Spotikit.

Features

  • Authentication: Full Authorization Code flow with automatic token refresh
  • Playback Control: Play, pause, resume, skip, previous, seek, and relative skip (forward/backward)
  • Realtime Playback State: Stream-based playback state updates with track info, progress, and pause status
  • Search & Play: One-shot search functionality to find and play tracks
  • Full Track Metadata: Rich metadata via Spotify Web API (album, images, popularity, etc.)
  • Centralized Logging: Built-in logging for debugging and diagnostics

Platform Support

  • ✅ Android (App Remote SDK + Web API)
  • ⏳ iOS (planned for future release)

0.0.24 #

Demo Release #

  • First good release I hope.
0
likes
160
points
371
downloads

Publisher

verified publisherardakoksal.tech

Weekly Downloads

Flutter plugin for Spotify App Remote integration on Android.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, http, logger, plugin_platform_interface

More

Packages that depend on spotikit

Packages that implement spotikit