Android の Apple ログイン
このプラグインのインストール手順と全マークダウンガイドを含む設定の質問をコピーします。
Android 上の Apple ログインは、ハックです。 Apple は Android での公式サポートを提供していません。 Sign in with Apple Android 上の解決策は、少しハックです。
Android は現在、OAuth2 ウェブサイトを表示するために Chrome タブを使用しています。このアプローチには、次の課題があります。
- 難しい設定
- バックエンドが必要
Android 上のフローを理解する
「Android 上のフローを理解する」のセクションフローを Android 上で説明するには、図を使用してください:
flowchart TD
A("await SocialLogin.login()") -->|Handled in the plugin|B(Generate the login URL)
B --> |Pass the link| C(Open the Chrome browser)
C --> D(Wait for the user to login)
D --> |Apple redirects to your backend|E(Handle the data returned from Apple)
E --> F(Redirect back to the app)
F --> G(Return to JS) 今、課題とフローについて理解したので、設定を開始しましょう。
サービス IDを作成する
サービス IDを作成する-
Apple Developer Portal にログインする Apple Developer Portal.
-
Apple Developer Portal の識別子セクション
Identifiers.
Apple Developer Portal の識別子画面
- App ID を見つけることができます。
App IDs - App ID を見つけることができます。
- App ID を見つけることができます。
-
__CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。
Sign in with Apple__CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。- __CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。
- __CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。
Sign in with Apple__CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。
- 有効になっていない場合は、有効にします。
- __CAPGO_KEEP_0__がなければ、以下の手順で__CAPGO_KEEP_0__を作成してください。
-
すべてに戻る
All Identifiers
-
クリックしてください
App IdsそしてServices IDs
-
新しい識別子を作成する
-
プラス ボタンをクリックしてください
-
選択してください
Servcice IDsそしてContinue
-
説明と識別子を入力してクリックしてください
Continuie.
-
詳細を確認し、
Register
-
新しく作成したサービス
-
機能
Sign in with Apple機能を有効
-
設定
Sign In with Apple
-
次のステップで設定したApp IDに設定されていることを確認してください
Primary App IDApp ID設定のドロップダウン
-
ドメインとリターンURLの設定フィールド
-
データを確認し、次のボタンをクリックしてください。
Done
-
サービス設定のための「次のステップ」ボタンをクリックしてください。
Continue
-
サービス設定のための「保存」ボタンをクリックしてください。
Save
-
キーを作成中のセクション
すべての識別子に戻る-
すべての識別子
All Identifiers
-
クリックしてください
Keys
-
プラスアイコンをクリックしてください
-
キー名を入力してください
-
とクリックしてください
Sign in with AppleSign in with Appleの有効化と設定Configure
-
主 App ID を選択し、<button> を押してください。
Save
-
<button> をクリックしてキー設定を進めてください。
Continue
-
キー ID をコピーし、キーをダウンロードしてください。
Register
-
注意
-
ダウンロードしたキーをバックエンドフォルダに保存してください。
チームIDを取得する
チームIDを取得するAndroidで使用するには、チームIDを取得する必要があります。 Login with Apple __CAPGO_KEEP_0__はバックエンドで使用されます。 Team IDバックエンドにアクセスしてください。
-
Androidで使用するには、チームIDを取得する必要があります。 このウェブサイト そして下にスクロール
-
チームIDの
Team ID
アプリのリダイレクト設定
「アプリのリダイレクト設定」のセクション図では、バックエンドが実行されるステップがあります。 Redirect back to the appこのステップには、アプリの変更が必要です。
- 変更する
AndroidManifest.xml-
ファイルを開きます。私は「AndroidManifest.xml」を使用します。
AndroidStudio
-
ファイルを探してください
MainActivityと追加するIntentフィルタ
<intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><data android:scheme="capgo-demo-app" android:host="path" /></intent-filter>
-
- を変更する
MainActivity-
plese、Android Studioで
MainActivity
-
code をMainActivityに追加する
@Overrideprotected void onNewIntent(Intent intent) {String action = intent.getAction();Uri data = intent.getData();if (Intent.ACTION_VIEW.equals(action) && data != null) {PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin");if (pluginHandle == null) {Log.i("Apple Login Intent", "SocialLogin login handle is null");return;}Plugin plugin = pluginHandle.getInstance();if (!(plugin instanceof SocialLoginPlugin)) {Log.i("Apple Login Intent", "SocialLogin plugin instance is not SocialLoginPlugin");return;}((SocialLoginPlugin) plugin).handleAppleLoginIntent(intent);return;}super.onNewIntent(intent);}
-
Backend configuration
Section titled “Backend configuration”A backend is required for Android, but configuring a backend will also impact IOS. An example backend is provided here
この例では、以下の機能が提供されます。
- シンプルなJSONデータベース
- AppleのサーバーからJWTを要求する方法
- シンプルなJWT検証
__CAPGO_KEEP_0__ env __CAPGO_KEEP_0__
ANDROID_SERVICE_ID= サービスIDIOS_SERVICE_ID= アプリID
env: { PRIVATE_KEY_FILE: "AuthKey_U93M8LBQK3.p8", KEY_ID: "U93M8LBQK3", TEAM_ID: "UVTJ336J2D", ANDROID_SERVICE_ID: "ee.forgr.io.ionic.starter.service2", IOS_SERVICE_ID: "me.wcaleniewolny.test.ionic.vue", PORT: 3000, REDIRECT_URI: "https://xyz.wcaleniewolny.me/login/callback", BASE_REDIRECT_URL: "capgo-demo-app://path"}プラグインの使用
「プラグインの使用」のセクション関数の使用方法は変わりません。iOSと同じです。詳しくはそのセクションを参照してください。 login ただし、 メソッドは少し変わります。クリップボードにコピー initialize 危険
await SocialLogin.initialize({ apple: { clientId: 'ee.forgr.io.ionic.starter.service2', redirectUrl: 'https://appleloginvps.wcaleniewolny.me/login/callback' }})アプリを作成する
アプリを作成する-
App ID が存在しない場合は、プラスボタンをクリックしてください。
-
識別子を選択する
App IDsと続けてクリック
-
種類をクリック
AppとクリックContinue
-
説明とApp IDを入力
-
有効
Sign with Apple機能
-
クリック
Continue
-
詳細を確認し、クリック
Register
AndroidでAppleログインから続けて
「AndroidでAppleログインから続けて」セクションCapacitorを使用している場合 AndroidでAppleログイン 認証とアカウントフローの計画に使用する場合、Capacitorを Using @capgo/capacitor-social-login for the native capability in Using @capgo/capacitor-social-login, @capgo/capacitor-social-login @capgo/capacitor-social-login @capgo/capacitor-social-login 実装詳細のために@capgo/capacitor-passkeyで @capgo/capacitor-native-biometric 実装詳細のために@capgo/capacitor-native-biometric、 2要素認証 実装詳細のために2要素認証。