Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 为什么AccountManager.invalidateAuthToken需要AccountType而不是AccountName?_Android_Accountmanager - Fatal编程技术网

Android 为什么AccountManager.invalidateAuthToken需要AccountType而不是AccountName?

Android 为什么AccountManager.invalidateAuthToken需要AccountType而不是AccountName?,android,accountmanager,Android,Accountmanager,使用invalidateAuthToken使来自AccountManager的授权令牌无效时 问题1:当使用帐户的名称似乎更有意义时,为什么函数需要帐户的类型 问题2:通过给它指定类型,invalidateAuthToken是否会清除该帐户类型下的所有身份验证令牌?Q1:类型没有名称那么严格,它隐含地表示您正在处理的是一个组而不是一个个人,IMHO accountType定义在accountManager中获取的帐户类型。例如:“www.google”用于谷歌账户。如果回调中有一个bundle,

使用
invalidateAuthToken
使来自
AccountManager
的授权令牌无效时

问题1:当使用帐户的
名称
似乎更有意义时,为什么函数需要帐户的
类型


问题2:通过给它指定
类型
invalidateAuthToken
是否会清除该帐户类型下的所有身份验证令牌?

Q1:类型没有名称那么严格,它隐含地表示您正在处理的是一个组而不是一个个人,IMHO

accountType定义在accountManager中获取的帐户类型。例如:“www.google”用于谷歌账户。如果回调中有一个bundle,您可以使用以下命令查找accountType:

private class GetAuthTokenCallback implements AccountManagerCallback<Bundle> {
    public void run(AccountManagerFuture<Bundle> result) {
        try {
           bundle = result.getResult();
           String auth_token = bundle.getString(AccountManager.KEY_AUTHTOKEN);
           String auth_account_type = bundle.getString(AccountManager.KEY_ACCOUNT_TYPE);
accountType不能为null,但authToken可以为null。如果省略authToken,则清除该accountType的所有标记

public void invalidateAuthToken (String accountType, String authToken)