Sign in with Apple works on both iOS Simulators and physical devices. However, physical devices provide full functionality including biometric authentication (Face ID/Touch ID), while simulators have limited support. Always test on a physical device before releasing to production.
Ensure that Enable for sign-up and sign-in is toggled on.
Note
Apple provides a privacy feature called Hide My Email, allowing users to sign in to your app with Apple without disclosing their actual email addresses. Instead, your instance receives an app-specific email address that forwards any emails to the user's real address. To be able to send emails properly to users with hidden addresses, you must configure an additional setting in the Apple Developer portal. See Configure Email Source for Apple Private Relay for more information.
If you're using <AuthView />Expo Icon from @clerk/expo/native, you do not need to install expo-apple-authentication, expo-crypto, or use the useSignInWithApple() hook — <AuthView /> handles the sign-in flow automatically.
If you're using <AuthView />Expo Icon from @clerk/expo/native, you do not need to install expo-apple-authentication, expo-crypto, or use the useSignInWithApple() hook — <AuthView /> handles the sign-in flow automatically.
The following example demonstrates how to use the useSignInWithApple()Expo Icon hook to manage the Apple authentication flow. Because the useSignInWithApple() hook automatically manages the transfer flow between sign-up and sign-in, you can use this component for both your sign-up and sign-in pages.