跳过内容

Supabase Apple iOS 登录设置

GitHub

前提条件

前提条件

本指南将帮助您在iOS上将Apple Sign-In与Supabase Authentication集成。假设您已经完成了:

使用身份验证助手 __CAPGO_KEEP_0__ supabaseAuthUtils.ts __CAPGO_KEEP_0__

__CAPGO_KEEP_0__

使用身份验证助手

The authenticateWithAppleSupabase 该函数处理整个身份验证流程:

import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();
if (result.success) {
console.log('Signed in:', result.user);
// Navigate to your authenticated area
} else {
console.error('Error:', result.error);
}

如何工作

如何工作

在 iOS 上,Apple Sign-In 使用本机实现:

  1. 初始化:该插件会自动使用您的应用程序的包 ID(不需要) clientId 本机登录
  2. :使用 Apple 的本机登录 Apple 按钮和身份验证流程Section titled “Initialization”
  3. 身份验证令牌: Apple 返回一个包含用户信息的身份验证令牌(JWT)
  4. Supabase 身份验证: 将身份验证令牌发送到 Supabase signInWithIdToken()

助手函数自动检测 iOS 平台并配置所有内容

重要注意事项

重要注意事项

包 ID 配置

包 ID 配置
  • iOS 使用您的应用程序的包 ID 自动进行 Apple Sign-In
  • 确保您的包 ID 与 Apple Developer Portal 中配置的包 ID 匹配
  • 包 ID 应该启用 "Sign in with Apple" 功能

Supabase Client ID

Supabase Client ID

在 Supabase 中,配置您的 Apple 提供商:

  • Client ID: 您的 iOS App ID(bundle ID)- 例如: app.capgo.plugin.SocialLogin

如果您还在使用 Android/Web,则需要在 Supabase 的 Client ID field 中提供 App ID 和 Service ID(以逗号分隔)

Troubleshooting

Troubleshooting

如果认证失败:

  • Bundle ID 不匹配: 确认您的 bundle ID 在 Xcode 和 Apple Developer Portal 中匹配
  • 能力未启用: 在 Xcode 中启用 “Sign in with Apple” 功能
  • Supabase 配置: 确认您的 App ID 在 Supabase Apple 提供商设置中正确配置
  • Token 验证失败: 检查 Apple 是否向您发送身份令牌
  • Review the 示例应用 code 以此为参考

继续从 Supabase Apple Login on iOS Setup

标题:继续从 Supabase Apple Login on iOS Setup

如果您正在使用 Supabase Apple Login on iOS Setup To plan authentication and account flows, connect it with 使用 @capgo/capacitor-social-login 对于 @capgo/capacitor-social-login 的原生能力 @capgo/capacitor-social-login 关于 @capgo/capacitor-social-login 的实现细节 @capgo/capacitor-passkey 关于 @capgo/capacitor-passkey 的实现细节 @capgo/capacitor-native-biometric 关于 @capgo/capacitor-native-biometric 的实现细节, 和 双因素认证 关于双因素认证的实现细节