Я использую Firebase AuthUI, чтобы разрешить аутентификацию в моем приложении. Единственный способ доставить мне проблемы - это AppleID. Вот начало действия:
List<AuthUI.IdpConfig> providers = Arrays.asList(
new AuthUI.IdpConfig.FacebookBuilder().build(),
new AuthUI.IdpConfig.GoogleBuilder().build(),
new AuthUI.IdpConfig.AppleBuilder().build(),
new AuthUI.IdpConfig.EmailBuilder().build());
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setAvailableProviders(providers)
.setTosAndPrivacyPolicyUrls(getString(R.string.terms_of_use_url),
getString(R.string.privacy_policy_url))
.setTheme(R.style.CoreTheme)
.build(),
RC_SIGN_IN);
А вот onActivityResult:
else if (requestCode == RC_SIGN_IN) {
IdpResponse response = IdpResponse.fromResultIntent(data);
if (resultCode == RESULT_OK) {
mLoginStateController.logIn(response);
} else {
}
}
Проблема в том, что, когда я вхожу в действие AuthUI, он возвращает меня на страницу, когда я Я должен ввести AppleID, но он неактивен. Когда я нажимаю обратно, он переносит меня в приложение, и onActivityResult правильно вызывается с токеном, но браузер должен закрываться сам по себе.
В консоли Firebase у меня есть вход с включенным Apple и Apple на консоли Apple Developer, все тоже настроен. Пользователь может войти в систему, просто вход в систему не закрывает окно браузера в AuthUI.