Firebase Google One Tap Win Inter не может найти соответствующие учетные данныеAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Firebase Google One Tap Win Inter не может найти соответствующие учетные данные

Сообщение Anonymous »

Я хочу внедрить вход в мою приложение с помощью учетной записи Google. Я использую Firebase для аутентификации пользователя. < /P>
Я уже читал документацию как миллион раз. Я добавил ключ отладки SH1 в Project Firebase Project в качестве отпечатка пальца, и я использую конфигурацию Web SDK из Firebase в качестве идентификатора веб -клиента:

I'm It It Set On Strings. />

Код: Выделить всё

**HERE**
остальная часть моего кода выглядит следующим образом:

Код: Выделить всё

public class AuthFragment extends Fragment {
private FragmentAuthBinding binding;
private SignInClient oneTapClient;
ActivityResultLauncher oneTapLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(),
result -> {
if (result.getResultCode() == Activity.RESULT_OK) {
Intent data = result.getData();
try {
var credential = oneTapClient.getSignInCredentialFromIntent(data);
String idToken = credential.getGoogleIdToken();
} catch (ApiException e) {
throw new RuntimeException(e);
}
}
});
public AuthFragment() {}

@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
binding = FragmentAuthBinding.inflate(inflater, container, false);
return binding.getRoot();
}

public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

HandleGoogleLogin();
}

@Override
public void onDestroyView() {
super.onDestroyView();
binding = null;
}

void HandleGoogleLogin()
{
oneTapClient = Identity.getSignInClient(requireActivity());
var signInRequest = BeginSignInRequest.builder()
.setGoogleIdTokenRequestOptions(BeginSignInRequest.GoogleIdTokenRequestOptions.builder()
.setSupported(true)
.setServerClientId(getString(R.string.web_client_id))
.setFilterByAuthorizedAccounts(false)
.build())
.build();

var googleLoginButton = binding.googleLoginButton;
googleLoginButton.setOnClickListener(v -> {
oneTapClient.beginSignIn(signInRequest)
.addOnSuccessListener(requireActivity(), result -> {
var intentSenderRequest = new IntentSenderRequest
.Builder(result.getPendingIntent().getIntentSender())
.build();
oneTapLauncher.launch(intentSenderRequest.getFillInIntent());
})
.addOnFailureListener(requireActivity(), e -> {
Log.d("googleLoginButton", "oneTapClient.beginSignIn:onError - " + e.getMessage());
// Handle errors or continue presenting the signed-out UI
});
});
}
}
< /code>
Это не единственный способ, которым я пытался его реализовать. Я также попытался добавить ключ SH1 в https://console.cloud.google.com/ и настройка OAuth 2.0 с https://console.cloud.google.com/apis/credentials?project=myProject:
 
Но на самом деле ничего не работает. 
Все, что я всегда получаю. учетные данные. 

Я не знаю, что я делаю не так. Обратите внимание, что у меня есть SetFilterByAuthorizedAccounts установить на false .
Как я могу заставить его работать? Что я делаю неправильно? Пользователи подписания моего приложения Firebase, почему оно также не выходит от провайдера Auth, скажем, Google? />https://medium.com/firebase-developers/ ... 60b30e621d
ничего не помогает.

Подробнее здесь: https://stackoverflow.com/questions/759 ... credential
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»