Skip to main content

Configure Sign In with Apple for a React Native App

Use this guide when the iOS app offers Apple login or when the app also offers third-party social login providers. Apple login setup involves Firebase, Apple Developer, and the native iOS target.

Quick Answer

Enable Apple as a Firebase Auth provider, enable Sign In with Apple on the Apple Developer App ID, add the Xcode capability to the iOS target, rebuild the app, then test Apple login on a real device or supported simulator with an Apple ID.

1. Enable Apple in Firebase Auth

  1. Open Firebase Console.
  2. Select your Firebase project.
  3. Go to Authentication > Sign-in method.
  4. Enable Apple.
  5. Save the provider settings.

Confirm the iOS app entry in Firebase uses the same bundle identifier as your Xcode target.

2. Enable the Apple Developer Capability

In Apple Developer:

  1. Open Certificates, Identifiers & Profiles.
  2. Select Identifiers.
  3. Open the App ID used by your iOS app.
  4. Enable Sign In with Apple.
  5. Save the App ID.

If you changed the bundle identifier during white-labeling, update the correct App ID before testing.

3. Add the Xcode Capability

Open the iOS workspace in Xcode:

  1. Select the app target.
  2. Open Signing & Capabilities.
  3. Add Sign In with Apple.
  4. Confirm the selected Team matches the Apple Developer account used above.
  5. Confirm the bundle identifier matches Firebase and Apple Developer.

4. Rebuild and Test

After changing native capabilities:

cd ios
bundle exec pod install
cd ..
yarn ios

Test with a real Apple ID. Confirm that:

  • the Apple login prompt appears;
  • sign-in returns to the app;
  • a user appears in Firebase Console > Authentication > Users;
  • the app creates or updates the expected user profile document.

Release Notes

  • Apple login is relevant for iOS. Android does not require Apple Sign In.
  • If the app offers third-party login providers on iOS, review Apple App Review requirements before submitting.
  • Test both first-time sign-in and returning sign-in.
  • Handle hidden Apple relay emails in profile and support workflows.

Troubleshooting

ProblemFix
Apple button does nothingCheck native package setup and Xcode capability.
Login returns an invalid credentialCheck Firebase provider, bundle id, Apple Developer App ID, and app config files.
Works locally but not TestFlightCheck release provisioning profile and production bundle id.
User appears in Auth but not profileCheck the app's user creation flow and Firestore rules.

Next Steps