我不明白方法confirmCredentials
是如何工作的。我从来没有在Android UI中看到任何类似“确认凭据”之类的选项,只有“创建帐户”和“删除帐户”。
答案 0 :(得分:1)
如果您要将设备上的Gmail帐户用作验证方法,则使用此选项。 当您打开应用程序时,NFCSecure会使用它,强制您使用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();
}
}
}