当前位置: 首页 > 知识库问答 >
问题:

如何从AccountManager注销自己的身份验证器?

陶琦
2023-03-14

我正在跟踪这个问题的答案。

但我得到了这个错误:

noSuchMethodError:没有虚拟方法removeAccount(Landroid/Accounts/Account;Landroid/App/Activity;Landroid/Accounts/AccountManagerCallback;Landroid/OS/Handler;)Landroid/Accounts/AccountManagerFuture;类Landroid/Accounts/AccountManager;或者它的超级类('Android.Accounts.AccountManager'的声明出现在/system/framework/framework.jar中)。

如何正确注销?

public void logOut() {
    final Account accounts[] = mAccountManager.getAccounts();

    if (accounts.length > 0) {
        mAccountManager.removeAccount(accounts[0], (Activity) context, new AccountManagerCallback<Bundle>() {
            @Override
            public void run(AccountManagerFuture<Bundle> future) {
                try {
                    Bundle bnd = future.getResult();
                    Log.d(TAG, String.valueOf(bnd));
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }, null);
    }
}

共有1个答案

慕鸿波
2023-03-14

我的解决方案在下面。虽然它被否决了,但它起作用了。如果你知道更好的解决办法,我将不胜感激。

mAccountManager.removeAccount(account, new AccountManagerCallback<Boolean>() {
                @Override
                public void run(AccountManagerFuture<Boolean> future) {
                    try {
                        if (future.getResult()) {
                            // do something
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    }

                }
            }, null);
 类似资料:
  • 我正在我的iOS项目中使用firebase SDK。我在应用程序启动后立即创建了一个匿名帐户。 对于facebook登录,我使用以下代码- 我应该如何实现登出?我需要用户返回Firebase匿名帐户。 我应该直接致电firebase注销并创建一个新的匿名帐户吗? 或者应该调用FBSDKLoginManager的logout方法,这样会持久化firebase匿名用户吗,facebook登录之前就有了

  • 我正在使用jwt auth在我的API中创建RESTful身份验证资源。当客户端应用程序调用登录资源时,如果用户已登录,则必须使当前令牌无效,从而生成新令牌。 但如果当前令牌被列入黑名单,则会抛出。 如何验证令牌是否被列入黑名单?或者如何正确执行用户“注销”?我试图在jwt auth API源代码上找到,但不存在

  • 问题内容: 注销HTTP身份验证受保护的文件夹的 正确 方法是什么? 有一些解决方法可以实现这一目标,但是它们可能会带来危险,因为它们可能有故障或在某些情况下/浏览器中无法使用。这就是为什么我要寻找正确和清洁的解决方案。 问题答案: 亩。 没有正确的方法 ,甚至没有跨浏览器一致的方法。 这是来自HTTP规范(第15.6节)的问题: 现有的HTTP客户端和用户代理通常会无限期地保留身份验证信息。HT

  • 问题内容: 我已经尝试过搜索,但是找不到我的问题的答案。 我正在从github玩这个应用程序:https : //github.com/Yalantis/Koloda/tree/master/Example 我之所以使用它,是因为我正在做一个项目,该项目将使用此应用程序中基于图块的滑动。 我也在使用Firebase。到目前为止,我可以将用户添加到数据库中,因此应用程序和firebase已连接。 我

  • 除了我不想使用Laravel的用户身份验证系统(相反,我使用自己的)之外,我正在构建一个Restful api。 所以我被困在这里: 这给了我以下错误: 类型错误:传递给Illumb\Auth\EloquentUserProvider::validateCredentials()的参数1必须是Illumb\Contracts\Auth\Authenticatable的实例,App\User给定的实

  • 我一直在寻找使用各种AWS服务来处理我们下一个主要项目的基础设施。我们开始研究EC2实例上的docker容器,但在进一步研究AWS Lambda之后,这似乎是一条值得探索的道路。 使用AWS Lambda范例,我们只需使用Lambda函数作为逻辑粘合剂,将数据和事件(来自其他AWS服务)保存在一起。 例如,如果我们产品的用户创建了一个新记录,AWS Lambda可以在该事件中触发,我们可以调用La