我在应用程序中生成第二个 token 时遇到问题。我在手机上注册了 2 个帐户。当我使用第一个帐户 token 时生成,但当我选择第二个 token 时未生成。 我的代码:
accountManager.getAuthTokenByFeatures("com.google", "Manage your tasks", null, this,
Bundle.EMPTY, Bundle.EMPTY, new AccountManagerCallback<Bundle>() {
@Override
public void run(AccountManagerFuture<Bundle> bundleAccountManagerFuture) {
try {
String token = bundleAccountManagerFuture.getResult()
.getString(AccountManager.KEY_AUTHTOKEN);
Log.e("token", token);
} catch (AuthenticatorException e) {
e.printStackTrace();
} catch (OperationCanceledException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}, null);
我收到以下错误:
android.accounts.AuthenticatorException: Unknown android.accounts.AccountManager.convertErrorToException(AccountManager.java:1726) android.accounts.AccountManager.access$400(AccountManager.java:144) android.accounts.AccountManager$AmsTask$Response.onError(AccountManager.java:1572) android.accounts.IAccountManagerResponse$Stub.onTransact(IAccountManagerResponse.java:69) android.os.Binder.execTransact(Binder.java:407) dalvik.system.NativeStart.run(Native Method)
最佳答案
getAuthTokenByFeatures
中的第二个参数应该是一个有效范围(例如:oauth2:https://gdata.youtube.com
)
关于android - 生成 token 以访问谷歌帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25982926/