Supabase Apple iOS 登录设置
复制一个包含安装步骤和完整 Markdown 指南的配置提示。
前提条件
前提条件本指南将帮助您在iOS上将Apple Sign-In与Supabase Authentication集成。假设您已经完成了:
- Apple Login iOS设置 Supabase Apple Login - 一般设置
- 实现 完整的实现可在.
示例应用程序的
文件中找到。该指南将解释关键概念并说明如何使用它。使用身份验证助手 __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 使用本机实现:
- 初始化:该插件会自动使用您的应用程序的包 ID(不需要)
clientId本机登录 - :使用 Apple 的本机登录 Apple 按钮和身份验证流程Section titled “Initialization”
- 身份验证令牌: Apple 返回一个包含用户信息的身份验证令牌(JWT)
- 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 的实现细节, 和 双因素认证 关于双因素认证的实现细节