Авторизация через google с помощью firebaseUi в android studio на java не работает при установке через APK

Использую аутентификацию через google с помощью FirebaseUI в android studio на java.

public class MainActivity extends AppCompatActivity {
private final ActivityResultLauncher<Intent> signInLauncher = 
registerForActivityResult(
new FirebaseAuthUIActivityResultContract(),
new ActivityResultCallback<FirebaseAuthUIAuthenticationResult>() {
            @Override
            public void onActivityResult(FirebaseAuthUIAuthenticationResult result) {
                onSignInResult(result);
            }
        }
); 
...
List<AuthUI.IdpConfig> providers = Arrays.asList(
        new AuthUI.IdpConfig.GoogleBuilder().build());

protected void onCreate(Bundle savedInstanceState) {
...
Intent signInIntent = AuthUI.getInstance()
                            .createSignInIntentBuilder()
                            .setIsSmartLockEnabled(false)
                            .setAvailableProviders(providers)
                            .build();
                    signInLauncher.launch(signInIntent);
...
private void onSignInResult(FirebaseAuthUIAuthenticationResult result) {
    IdpResponse response = result.getIdpResponse();
    if (result.getResultCode() == RESULT_OK) {
        // Successfully signed in
        user=mAuth.getCurrentUser();
            String userEmail = user.getEmail(); // Getting user email
            String userName = user.getDisplayName(); // Getting username
            Toast.makeText(context, "User authorization: login: "+userName+" email: 
"+userEmail, Toast.LENGTH_LONG).show();
            auth=true;
            startButton.setVisibility(View.VISIBLE);
            // ...
        }else{
        Toast.makeText(context, "User authorization failed Error: 
"+response.getError().getErrorCode(), Toast.LENGTH_LONG).show();
        Log.d("Authorization", "User authorization failed Error: " + 
response.getError().getErrorCode());
    }
    }
...

Если устанавливаю используя отлатку через USB в android studio на смартфон, то все нормально работает. Если устанавливаю через APK файл, авторизация не проходит и response.getError().getErrorCode() показывает ошибку 4.


Ответы (1 шт):

Автор решения: badmaev2208

Я нашел ошибку. В firebase был указан sha-1 и sha-256 debug версии. Для релизной версии нужно отпечаток релизной версии. Нужно с помощью keytool получить SHA-1 и SHA-256 релизной версии, и указать в Firebase.

→ Ссылка