Skip to content

Apple Sign-In Migration to @capgo/social-login

@GitHub

このガイドでは、レガシープラグインからモダン @capacitor-community/apple-sign-in パッケージへの移行を説明しています。新しいプラグインは、複数のソーシャル認証プロバイダーに対する統一されたインターフェイスを提供し、改善されたTypeScriptサポートとアクティブなメンテナンスを提供します。 @capgo/capacitor-social-login インストール

「インストール」というタイトルのセクション

古いパッケージを削除してください:
  1. ターミナルウィンドウ

    __CAPGO_KEEP_0__
    npm uninstall @capacitor-community/apple-sign-in
  2. __CAPGO_KEEP_0__の新しいパッケージをインストールします。

    ターミナル画面
    npm install @capgo/capacitor-social-login
    npx cap sync
import { SignInWithApple } from '@capacitor-community/apple-sign-in';
import { SocialLogin } from '@capgo/capacitor-social-login';

主な変更点: The new plugin requires an initialization step that wasn’t needed before.

// No initialization needed in old package
// For iOS: Basic configuration
await SocialLogin.initialize({
apple: {} // Basic iOS configuration
});
// For Android: Additional configuration required
await SocialLogin.initialize({
apple: {
clientId: 'YOUR_SERVICE_ID', // Service ID from Apple Developer Portal
redirectUrl: 'https://your-backend.com/callback' // Your backend callback URL
}
});

Important Note: iOSでは基本的な設定を提供する必要がありますが、AndroidではサービスIDとWebベースのOAuth認証のためのバックエンドコールバックURLなどの追加情報が必要です。

: ログインプロセスは、複数のパラメータからクリーンなAPI:に簡素化されます。

const result = await SignInWithApple.authorize({
clientId: 'com.your.app',
redirectURI: 'https://your-app.com/callback',
scopes: 'email name',
state: '12345',
nonce: 'nonce'
});
const result = await SocialLogin.login({
provider: 'apple',
options: {
// Optional: Add scopes if needed
scopes: ['email', 'name'],
nonce: 'nonce'
}
});

: 新しいプラグインは login()provider: 'apple' オプションのスコープを使用するのではなく、 clientIdredirectURI.

Results now include an accessToken object with expiration details and a structured profile section, replacing the flatter response format of the original package:

// Old response type
interface AppleSignInResponse {
response: {
user: string;
email: string | null;
givenName: string | null;
familyName: string | null;
identityToken: string | null;
authorizationCode: string | null;
};
}
// New response type
interface SocialLoginResponse {
provider: 'apple';
result: {
accessToken: {
token: string;
expiresIn?: number;
refreshToken?: string;
} | null;
idToken: string | null;
profile: {
user: string;
email: string | null;
givenName: string | null;
familyName: string | null;
};
};
}

The updated plugin introduces functionality that wasn’t available in the predecessor:

Checking Login Status

// Not available in old package
const status = await SocialLogin.isLoggedIn({
provider: 'apple'
});

Logout Functionality

// Not available in old package
await SocialLogin.logout({
provider: 'apple'
});

__CAPGO_KEEP_0__の方法は isLoggedIn() 認証状態を確認し logout() __CAPGO_KEEP_1__。

__CAPGO_KEEP_4__ __CAPGO_KEEP_5__を通じてXcodeの機能を活用

  1. __CAPGO_KEEP_6__の設定はほとんど変わりません。まだ必要なのは:
    • Xcodeで「Appleでサインイン」を有効にします
    • アプリをApple Developer Portalで設定
    • iOSの場合、codeの追加変更は必要ありません

Android Androidは、WebベースのOAuth認証を介してネイティブサポートを受けます:

新しいプラグインはAndroidのサポートを箱から提供しますが、追加の設定が必要です:

  1. Apple Developer PortalでサービスIDを作成
  2. Webベースの認証エンドポイントを設定
  3. AndroidアプリをOAuthフローを処理するように設定
  4. バックエンドサービス設定が必要

詳細なAndroidのセットアップ手順については、 Android セットアップ ガイド.

モダン化されたパッケージは次の機能を提供します:

  1. 統合 API 複数のソーシャル プロバイダー (Google、Facebook、Apple) での使用
  2. 改善された TypeScript の型付け より良い型定義
  3. アクティブなコミュニティ メンテナンス 非推奨のバージョンと比較して
  4. Android の組み込みサポート ウェブベースの認証を通じて
  5. __CAPGO_KEEP_0__
  6. エラー処理の改善 一貫したエラー形式

変更点

変更点
  1. 明示的な初期化が必要になりました - デフォルトの構成なし
  2. レスポンスオブジェクトの構造が変更されました - ネストされた結果形式
  3. Android実装にはOAuth用のバックエンドサービスが必要です トークン更新の処理が異なります
  4. protectedTokens - トークン管理の改善
  5. エラー処理とエラータイプが変更されました - 詳細なエラー

詳細なセットアップ手順については、公式ドキュメントを参照してください Apple Sign-In Migrationから@__CAPGO_KEEP_0__/social-loginに進みましょう.

@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-loginを使用して、@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-loginのネイティブ機能と接続してください Apple Sign-In Migrationから@capgo/social-loginに進む Apple Sign-In Migrationから@__CAPGO_KEEP_0__/social-loginに進む Apple Sign-In Migrationを使用して認証とアカウントフローの計画を行っている場合、@capgo/capacitor-social-loginを接続してください @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の実装詳細 2要素認証 2要素認証の実装詳細