SPTAuthViewController authentication workflow not working properly

I’m running into problems with the Spotify authentication flow in my iOS app. When I first tried to authenticate, I think the login worked but then the auth process got stuck on the final screen and wouldn’t complete.

Now whenever I attempt to log in again, the authentication popup just shows up as completely blank with no content. I tried clearing all my browser cookies to start fresh, and while this does bring back the login form, it gets stuck right after I type in my credentials and won’t move forward.

I’ve tested this implementation using both Objective-C following the track playback example from the official SDK, and also tried a Swift approach. Both seem to have the same issue with the authentication view controller getting stuck or showing blank screens. Has anyone else experienced similar problems with SPTAuthViewController?

Had the exact same issue 6 months ago with Spotify auth in my music app. That blank screen drove me crazy. Turns out it’s usually session state conflicts in SPTAuthViewController. Try calling SPTAuth.defaultInstance().session = nil before starting any new auth attempt - clears out corrupted session data that makes the controller hang. Also double-check your URL scheme in Info.plist matches exactly what’s in your Spotify app settings. The auth controller’s really picky about mismatches. One more thing - test on actual devices instead of simulator. I caught issues that only happen with real Safari view controller behavior that way.

yep, i had that too! make sure the redirect URI is spot on with what you’ve set in the spotify dev console. even the smallest difference like a trailing slash can mess things up big time!

Been there too. After dealing with auth headaches across platforms, I ditched the native SDK approach and moved to something more reliable.

Now I handle OAuth through an automation platform that manages authentication externally. Way more control over errors, easy retries, and no platform-specific webview issues.

I use webhooks and API calls instead of those finicky auth view controllers. Users get redirected to a clean web flow that actually works. Once they’re authenticated, tokens come back through a solid callback system.

This kills those blank screen issues since you’re not stuck with iOS webview behavior. Plus you get proper logging to see exactly where things break.

If you want to try this, check out Latenode at https://latenode.com - handles these auth workflows well and saves you from debugging SDK problems.