如何获得存储在AccountManager里的Token
2011-11-28 16:27
176 查看
我的程序在点击了 “账户与同步”----“添加账号”后,会调用一个手写的登录界面,在登录成功后,
会返回方法:
以后如果想取到这个时候存进AccountManager里的token,该怎么办呢?
开始我试图尝试采用aManager.getAuthToken(account, authTokenType, notifyAuthFailure, callback, handler)
这个方法,但是这里面取得的结果是AccountManagerFuture<Bundle>类型的,其中的getResult()方法是虚函数,
不知道如何取得其中的值,有懂的高手可以指导我下,后来我采取了如下方法,成功取得:
会返回方法:
// 登陆成功后写入Authenticator的数据 by MengWeiqi public void onLoginSuccess(String account, String pwd, String token) { Account mAccount = new Account(account, getString(R.string.ACCOUNT_TYPE)); AccountManager am = AccountManager.get(mContext); Bundle result = new Bundle(); result.putString(AccountManager.KEY_ACCOUNT_NAME, account); result.putString(AccountManager.KEY_ACCOUNT_TYPE, getString(R.string.ACCOUNT_TYPE)); result.putString(AccountManager.KEY_AUTHTOKEN, token); if (am.addAccountExplicitly(mAccount, pwd, result)) { Log.i("log","66666666666666"); activity.setAccountAuthenticatorResult(result); callBack(token); } }
以后如果想取到这个时候存进AccountManager里的token,该怎么办呢?
开始我试图尝试采用aManager.getAuthToken(account, authTokenType, notifyAuthFailure, callback, handler)
这个方法,但是这里面取得的结果是AccountManagerFuture<Bundle>类型的,其中的getResult()方法是虚函数,
不知道如何取得其中的值,有懂的高手可以指导我下,后来我采取了如下方法,成功取得:
String token = aManager.getUserData(accounts[0], AccountManager.KEY_AUTHTOKEN);
相关文章推荐
- 如何在存储过程内部获得查询的结果
- dojo:如何为表格添加从数据库获得存储的下拉框
- 基于Lucene3.5.0如何从TokenStream获得Token
- 如何高效率存储微信中的 access_token 限制申请2000次/天
- 微信开发--如何存储并定时更新access_token
- ASP.NET结合Sql Server数据库如何获得存储过程的返回值进行操作
- 微信开发--如何存储并定时更新access_token
- DB2 如何获得存储过程对应的包中的执行计划
- 黄聪:如何高效率存储微信中的 access_token
- 简述c++中string对象的内存分配策略?如何获得其可存储的最大字节
- 基于Lucene3.5.0如何从TokenStream获得Token
- MySQL:存储过程详解和如何获得 MySQL 毫秒、微秒
- 如何在存储过程内部获得查询的结果
- 关于websphere 上如何使用 ssl 向 qyapi.weixin.com 发送 获得access_token 的请求
- 如何获得mysql存储过程的参数列表
- 请问如何获得存储过程中错误后的数据!谢谢
- 如何获得动态链接库函数被调用时获得自己存储路径
- oracle 存储过程 如何获得 捕获异常的内容
- facebook开发如何获得当前登录用户的token
- 以字符串存储的时间值,如何实现你想要的格式查询出来