コンテンツにジャンプ

iOS用のSupabase Appleログインの設定

This guide will help you integrate Apple Sign-In with Supabase Authentication on iOS. It is assumed that you have already completed:

Implementation

実装

__CAPGO_KEEP_0__の完全な実装は、 __CAPGO_KEEP_0__のファイルにあります。このガイドでは、主な概念とその使用方法について説明します。 supabaseAuthUtils.ts Authentication Helperの使用

セクション「Authentication Helperの使用」

この

関数は、すべての認証フローを処理します: 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);
}

On iOS, Apple Sign-In uses the native implementation:

  1. 初期化: プラグインは自動的にアプリのバンドルIDを使用します (必要ありません) clientId ネイティブ サインイン
  2. : Appleのネイティブサインインボタンと認証フローを使用しますアイデンティティ トークン
  3. : Appleはユーザー情報を含むアイデンティティトークン (JWT) を返しますスーパベース認証
  4. : アイデンティティトークンはスーパベースに送信されますヘルパー関数はiOSプラットフォームを自動的に検出して、すべての設定を適切に構成します。 signInWithIdToken()

重要な注意事項

セクション「重要な注意事項」

__CAPGO_KEEP_0__
  • iOS は、Apple Sign-In のためにアプリの Bundle ID を自動的に使用します
  • Apple Developer Portal で設定されている Bundle ID と一致するように、Bundle ID を確認してください
  • Sign in with Apple の機能が有効になっている Bundle ID を持つ必要があります

Supabase で、Apple プロバイダーを以下のように設定してください

  • Client IDiOS アプリ ID (Bundle ID) - 例えば app.capgo.plugin.SocialLogin

Android/Web も使用している場合は、Supabase の Client ID フィールドに App ID と Service ID を両方指定する必要があります (カンマで区切って)

トラブルシューティング

トラブルシューティング

認証が失敗した場合:

  • Bundle IDの不一致: XcodeとApple Developer PortalでBundle IDが一致していることを確認してください
  • Sign in with Apple機能が有効になっていません: Xcodeで「Sign in with Apple」機能が有効になっていることを確認してください
  • Supabaseの設定: SupabaseのAppleプロバイダ設定でApp IDが正しく設定されていることを確認してください
  • トークン検証が失敗: Appleからアイデンティティトークンが正しく受信されていることを確認してください
  • 例として example app code 参考用