Created
April 7, 2020 23:20
-
-
Save riscait/aeb3d0078cb9949e4986bb5ed708a6b7 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// Sign in with Appleが押された | |
Future onPressedAppleButton(BuildContext context) async { | |
// 証明書をリクエストして取得 | |
AuthCredentialWithApple credentialWithApple; // フルネームを使用しない場合は `AuthCredential`でOK | |
try { | |
credentialWithApple = await requestAppleIdCredential(); // この後実装 | |
} on Exception catch (e) { | |
// エラーハンドリング | |
} | |
if (credentialWithApple == null) { | |
return; // null == キャンセルなので何もしない | |
} | |
// Appleサインインを実行 | |
final result = await signInWithAppleIdCredential(credentialWithApple); // この後実装 | |
if (result == null) { | |
// エラーハンドリング | |
} | |
// 新規ユーザーか既存ユーザーかの分岐 | |
if (result.additionalUserInfo.isNewUser) { | |
// 新規ユーザーの場合の処理 | |
/* フルネームを使用する場合に追加する処理ここから */ | |
final user = result.user; // サインアップしたユーザー | |
final updateUser = UserUpdateInfo() // ユーザー情報更新用クラス | |
// 更新したい名前を好みの形式で設定 | |
..displayName = | |
'${credentialWithApple.familyName} ${credentialWithApple.givenName}'; | |
await user.updateProfile(updateUser); // ユーザープロフィールを更新実行 | |
/* フルネームを使用する場合に追加する処理ここまで */ | |
} else { | |
// 既存ユーザーの場合の処理 | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment