DEV Community

Cover image for Flutter Apple Sign In Error 1000: The Fix No One Talks About
koreanDev
koreanDev

Posted on

Flutter Apple Sign In Error 1000: The Fix No One Talks About

I'm building an iOS reading app solo. The idea is simple — save sentences that stop you while reading, turn them into beautiful cards, and share them. The stack is Flutter, Express/TypeScript, and Supabase. Authentication is handled with Apple Sign In.

Apple requires apps to support account deletion, or they'll reject your app during review. So I built it. And with Apple Sign In, deleting an account isn't just about wiping the user from your database. You have to revoke the Apple refresh_token too. That's how Apple officially disconnects the user from your app.

I got it working. Revoke call on the server, soft delete in the database. Everything looked fine.


Then It Broke

After testing account deletion, I tried signing in again. The moment I tapped the login button, it crashed. No Apple authentication sheet. Nothing. Just an error.

SignInWithAppleAuthorizationException(
AuthorizationErrorCode.unknown,
The operation couldn't be completed.
(com.apple.AuthenticationServices.AuthorizationError error 1000.)
)

My first thought was a bad request to Apple, or maybe a network issue. I deleted the app, reinstalled it. Same error.


Debugging

I was using the sign_in_with_apple Flutter package. To figure out exactly where it was failing, I added logs at every step inside signInWithApple().

debugPrint('🍎 [1] signInWithApple started');
debugPrint('🍎 [2] before appleLogin call');
final result = await repo.appleLogin();
debugPrint('🍎 [3] appleLogin complete');
Enter fullscreen mode Exit fullscreen mode

The output was this:
🍎 [1] signInWithApple started
🍎 [2] before appleLogin call
🍎 [ERROR] SignInWithAppleAuthorizationException(...)

It crashed right after [2]. The package's getAppleIDCredential() method was failing instantly. No request ever reached the server. The Apple authentication sheet never even had a chance to appear.

This wasn't a server issue. It wasn't a Flutter logic issue. Something was wrong at a much lower level.


The Cause

After spending a little bit time on this with claude, I Googled it.

Sign in with Apple was missing from Xcode Capabilities.

At some point during a pod install or a Flutter dependency update, the Xcode project settings got reset and the capability disappeared. Without it, Apple Authentication Services simply doesn't work. It fails immediately and returns error 1000. The system blocks it before anything else runs.


The Fix

Xcode → Select Runner target → Signing & Capabilities → + → Add Sign in with Apple

That was it. After adding it back, the Apple authentication sheet appeared immediately.


One More Thing

I asked AI about this while debugging. Every single answer it gave was wrong. It pointed me toward token revocation policies, network issues, things that had nothing to do with the actual problem. I solved it by Googling myself.

AI is genuinely useful for a lot of things in development. But it doesn't always get it right. When you're stuck, don't forget that Google is still there.

Top comments (0)