如果应用程序删除然后重新安装怎么办我如何获取电子邮件地址和名称登录使用Apple

What if application delete and then reinstalled how i can get the email address and name Sign in With Apple

最近我的应用程序被 apple 拒绝了,问题是必须包括使用 apple 登录,但我尝试过,现在我遇到了一个用例,到目前为止找不到解决方案。

如果用户在我的应用程序中使用 apple 登录并获取电子邮件地址以在我的服务器上注册会怎样,但是如果他删除该应用程序并在一段时间后重新安装该应用程序会发生什么,现在他将无法获取电子邮件地址根据苹果文档

if ([authorization.credential isKindOfClass:[ASAuthorizationAppleIDCredential class]]) {
    // ASAuthorizationAppleIDCredential
    ASAuthorizationAppleIDCredential *appleIDCredential = authorization.credential;
    NSString *user = appleIDCredential.user;
    [[NSUserDefaults standardUserDefaults] setValue:user forKey:setCurrentIdentifier];
    [mStr appendString:user?:@""];
    NSString *familyName = appleIDCredential.fullName.familyName;
    [mStr appendString:familyName?:@""];
    NSString *givenName = appleIDCredential.fullName.givenName;
    [mStr appendString:givenName?:@""];
    NSString *email = appleIDCredential.email;
    [mStr appendString:email?:@""];
    NSLog(@"mStr:%@", mStr);
    [mStr appendString:@"\n"];
    appleIDLoginInfoTextView.text = mStr;

} 

一旦我成功注册并获得电子邮件地址,我将不会收到电子邮件,即使我删除应用程序也是第二次。

除了第一次,您不会总是收到电子邮件。但每次登录时,您都会获得一个唯一标识符,您可以使用它来检索电子邮件和其他详细信息。

要么将这些详细信息保存在服务器上托管的数据库中,要么 save/retrieve 从钥匙串中保存它们。保存在钥匙串中的项目不会在应用程序卸载时被删除。因此,您可以轻松地从钥匙串中检索这些详细信息。