AndroidでAppleログイン
このプラグインのインストール手順とフルマークダウンガイドを含むセットアッププロンプトをコピーする。
AndroidでAppleログインはハックです。 AppleはAndroidに対して公式のサポートを提供していないため、解決策は少しハックです。 Sign in with Apple Android上では、Appleが公式のサポートを提供していないため、解決策は少しハックです。
Androidは現在、OAuth2ウェブサイトを表示するためにChromeタブを使用しています。このアプローチには、以下の課題があります。
- 難しい設定
- バックエンドが必要
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.
-
クリック
Identifiers.
画面が以下のようになります。
- このフィールドが
App IDs - App IDが見つかります。
- このフィールドが
-
アプリの機能が有効になっていることを確認してください
Sign in with Appleアプリの機能が有効になっていることを確認してください- アプリをクリックしてください
- 機能が有効になっていることを確認してください
Sign in with Apple機能が有効になっていることを確認してください
- 有効になっていない場合は有効にします。
- アプリをクリックしてください
-
すべての識別子ナビゲーション ボタン
All Identifiers
-
クリックしてください
App Idsそして移動してくださいServices IDs
-
__CAPGO_KEEP_0__を作成
-
__CAPGO_KEEP_0__のプラスボタンをクリック
-
選択
Servcice IDsそしてクリックContinue
-
説明と識別子を入力してクリック
Continuie.
-
詳細を確認し、クリックしてください
Register
-
新しく作成されたサービスにクリックしてください
-
オプションを有効にしてください
Sign in with Apple__CAPGO_KEEP_0__
-
__CAPGO_KEEP_1__のSign in with Appleの設定
Sign In with Apple
-
__CAPGO_KEEP_2__がApp IDに設定されていることを確認してください
Primary App ID__CAPGO_KEEP_3__のApp IDを設定してください
-
ホストするバックエンドのドメインを追加してください。
-
確認するドメインとリターンURLの設定
Done
-
クリックしてください
Continue
-
クリックしてください
Save
-
キーを作成しています
「キーを作成しています」のセクション-
すべての識別子に戻る
All Identifiers
-
クリックしてください
Keys
-
プラスアイコンをクリックしてください
-
キー名を入力してください
-
選択
Sign in with Apple選択してクリックConfigure
-
主なApp IDを選択し、
Save
-
Continue
-
Register
-
キーIDをコピーし、キーをダウンロードしてください。
-
__CAPGO_KEEP_0__をダウンロードしたキーファイルを、バックエンドフォルダに保存してください。
チームIDを取得する
チームIDを取得するセクション使用するには Login with Apple Androidで使用するには、チームIDを取得する必要があります。 Team IDチームIDはバックエンドで使用されます。
-
チームIDを取得するには このウェブサイト 下にスクロールしてください
-
開発者アカウントでチームIDの場所を探してください
Team ID
アプリのリダイレクト設定
アプリのリダイレクト設定図では、バックエンドがアプリのリダイレクト設定のステップを実行します。 Redirect back to the appこのステップでは、アプリの設定に手動で変更が必要です。
- 変更する
AndroidManifest.xml-
Android Studioでファイルを開きます。ここでは
AndroidStudio
-
ここに
MainActivityMainActivityに追加する必要がある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>
-
- __CAPGO_KEEP_0__
MainActivity-
Please open the
MainActivity
-
Add the following code:
@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);}
-
バックエンドの設定
「バックエンドの設定」Androidの場合、バックエンドは必要ですが、バックエンドを設定すると、IOSにも影響します。以下に例のバックエンドが示されています。 ここ
以下の機能が提供されます。
- シンプルなJSONデータベース
- AppleのサーバーからJWTを要求する方法
- シンプルなJWTの検証
サービスID env アプリID
ANDROID_SERVICE_IDコピーIOS_SERVICE_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"}= App ID
「プラグインの使用方法」を参照してください__CAPGO_KEEP_0__の使用方法は変わりません。iOSと同じです。詳しくはそのセクションを参照してください。 login ただし、 「HOWEVER」の initialize 「method」は少し変わります。
await SocialLogin.initialize({ apple: { clientId: 'ee.forgr.io.ionic.starter.service2', redirectUrl: 'https://appleloginvps.wcaleniewolny.me/login/callback' }})アプリを作成する
アプリを作成する-
App IDが存在しない場合は、プラスボタンをクリックしてください。
-
選択
App IDs続けて
-
種類を選択
App続けてContinue
-
__CAPGO_KEEP_0__を入力してください
-
有効
Sign with Apple機能
-
クリック
Continue
-
__CAPGO_KEEP_0__の詳細を確認してください
Register