iOS 设备上的 Supabase Apple 登录设置
复制一个包含安装步骤和此插件的完整Markdown指南的设置提示
前提条件
标题为“前提条件”本指南将帮助您在 iOS 上将 Apple Sign-In 与 Supabase 身份验证集成。假设您已经完成了:
- 苹果登录 iOS 设置 the
- 苹果登录 iOS 设置 Supabase Apple 登录 - 一般设置.
实现
实现完整的实现可在 示例应用程序的 supabaseAuthUtils.ts 文件中找到。 本指南解释了关键概念和如何使用它。
使用身份验证助手
身份验证助手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);}context
如何工作在 iOS 上,Apple Sign-In 使用原生实现:
- 初始化: 插件会自动使用您的应用程序的包 ID(无需额外配置)
clientId原生 Sign-In - : 使用 Apple 的原生 Sign in with Apple 按钮和身份验证流程身份令牌
- : Apple 返回一个包含用户信息的身份令牌(JWT)Supabase 身份验证
- : 将身份令牌发送到 Supabase 使用助手函数会自动检测 iOS 平台并配置所有内容。
signInWithIdToken()
自动检测 iOS 平台并进行适当配置。
重要说明
重要说明包ID配置
包ID配置- iOS会自动使用您的应用程序的包ID进行Apple Sign-In
- 确保您的包ID与Apple Developer Portal中配置的包ID匹配
- 包ID应启用“使用Apple登录”功能
Supabase客户端ID
在Supabase中,配置Apple提供商:客户端ID
- Client IDprotectedTokens
app.capgo.plugin.SocialLogin
如果您还在使用 Android/Web,则需要在 Supabase 的 Client ID 字段中提供 App ID 和 Service ID(以逗号分隔)。
Troubleshooting
解决问题如果认证失败:
- 包 ID 不匹配: 在 Xcode 和 Apple Developer Portal 中验证您的包 ID是否匹配
- 能力未启用: 在 Xcode 中确保已启用 "Sign in with Apple" 能力
- Supabase 配置: 在 Supabase Apple 提供商设置中验证您的 App ID 是否正确配置
- 令牌验证失败: 检查 Apple 是否向您发送身份令牌
- Review example app code 用于参考
继续从 Supabase Apple iOS 登录设置
Section titled “继续从 Supabase Apple iOS 登录设置”如果您正在使用 Supabase Apple iOS 登录设置 来规划身份验证和帐户流程,连接它 使用 @capgo/capacitor-social-login 为 Using @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 的实现细节,以及 双因素认证 了解双因素认证的实现细节。