Flutter Войти с ошибкой яблока - PullRequest
0 голосов
/ 13 февраля 2020

В своих приложениях я выполняю вход с помощью apple, по какой-то причине ошибка возврата на моем сервере приводит к тому, что длина имени пользователя при входе с apple не соответствует моему условию, и я не кэширую информацию о пользователе. После этого я обновляю сервер, чтобы удалить требование к длине имени пользователя, но, к сожалению, имя пользователя и адрес электронной почты пустые? Решение, которое я знаю, состоит в том, чтобы прекратить использование идентификатора яблока со страницы настроек на Iphone, есть ли другое решение из кода? вот мой код:

AppleSignInButton(
  style: ButtonStyle.whiteOutline,
  cornerRadius: 8,
  type: ButtonType.signIn,
  onPressed: () async {
    var isConnected = await checkConnection();
    if (!isConnected) {
        showErrorDialog(message: ErrorMessage.NO_NETWORK);
    } else {
        final AuthorizationResult result = await AppleSignIn.performRequests([
                AppleIdRequest(requestedScopes: [Scope.email, Scope.fullName])
        ]);

        if (result != null) {
            switch (result.status) {
                case AuthorizationStatus.authorized:
                    _loginWithApple(result.credential);
                    break;
                case AuthorizationStatus.cancelled:
                    break;
                case AuthorizationStatus.error:
                    showErrorDialog(message: result.error.localizedFailureReason);
                    break;
            }
        } else {
            showErrorDialog(message: result.status.toString(), onTap: (){});
        }
    }
},)
...