¿A quién y cuándo debe confirmar el método de llamadas de la clase abstractaccountauthenticator?
-
27-10-2019 - |
Pregunta
No entiendo como método confirmCredentials
obras. Nunca he visto ninguna opción en la interfaz de usuario de Android como "confirmar credenciales" o algo así como, solo hay "crear cuenta" y "eliminar la cuenta".
Solución
Se usa si desea utilizar la cuenta de Gmail en el dispositivo como método de verificación. NFCSecure lo usa cuando abre la aplicación, lo que lo obliga a iniciar sesión con su Gmail.
public void verifyAuth(Bundle b) throws IllegalArgumentException {
accountManager.confirmCredentials(getImportantAccount(importantEmail), b, (Activity) c, new OnConfirmed(), null);
}
public void attemptLogin() {
mEmailView.setError(null);
mPasswordView.setError(null);
mEmail = mEmailView.getText().toString();
mPassword = mPasswordView.getText().toString();
boolean cancel = false;
View focusView = null;
if (TextUtils.isEmpty(mPassword)) {
mPasswordView.setError(getString(R.string.error_field_required));
focusView = mPasswordView;
cancel = true;
} else if (mPassword.length() < 4) {
mPasswordView.setError(getString(R.string.error_invalid_password));
focusView = mPasswordView;
cancel = true;
}
if (TextUtils.isEmpty(mEmail)) {
mEmailView.setError(getString(R.string.error_field_required));
focusView = mEmailView;
cancel = true;
} else if (!mEmail.contains("@")) {
mEmailView.setError(getString(R.string.error_invalid_email));
focusView = mEmailView;
cancel = true;
}
if (cancel) {
focusView.requestFocus();
} else {
mLoginStatusMessageView.setText(R.string.login_progress_signing_in);
showProgress(true);
gAuth = new GoogleAuthentication(ctx, mEmailView.getText().toString());
gAuth.setUserConfirmedListener(SettingsUnlockActivity.this);
Bundle b = new Bundle();
b.putString(AccountManager.KEY_PASSWORD, mPasswordView.getText().toString());
try {
gAuth.verifyAuth(b);
} catch (IllegalArgumentException e) {
doUnSuccessfulLogin();
}
}
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow