首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AccountManager抛出UnsupportedOperationException: getAuthTokenLabel

AccountManager抛出UnsupportedOperationException: getAuthTokenLabel
EN

Stack Overflow用户
提问于 2016-02-06 07:51:05
回答 1查看 391关注 0票数 3

我在一个Android应用程序中调用下面的代码(为了针对Google app Engine进行身份验证,我想这是顺便提一下):

代码语言:javascript
复制
AccountManager accountManager = AccountManager.get(this);
accountManager.getAuthToken(mAccount, "ah",null, false, new GetAuthTokenCallback(), null);

GetAuthTokenCallback()中,会抛出此错误:

代码语言:javascript
复制
android.accounts.AuthenticatorException: java.lang.UnsupportedOperationException: getAuthTokenLabel not supported

身份验证过程到此为止。

奇怪的是,它在Android5.5.1设备上运行得很好;UnsupportedOperationException only错误出现在6.0.1设备上。

我有对GET_ACCOUNTS的运行时权限请求,我认为这是我需要的,但我怀疑错误源于这个和Marshmellow的权限系统。

代码语言:javascript
复制
@TargetApi(23)
private boolean haveGetAccountPermission() {
    Log.i(TAG, "haveGetAccountPermission()");
    int hasWriteContactsPermission = ActivityCompat.checkSelfPermission(this,Manifest.permission.GET_ACCOUNTS);
    if (hasWriteContactsPermission != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(this,new String[] {Manifest.permission.GET_ACCOUNTS},
                REQUEST_CODE_ASK_PERMISSIONS);
        return false;
    } else {
        return true;
    }
}

任何想法都非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2016-05-11 02:45:20

我不知道这是否有帮助,但我发现在执行getAuthToken()之前立即创建一个新帐户会抛出此异常。

在我的例子中,我试图重命名一个帐户,我发现如果首先使用旧帐户执行getAuthToken(),然后使用其内容创建一个新帐户,则不会再抛出异常。

我怀疑这可能是棉花糖中的一个bug。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35235481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档