Den*_*ter 7 android facebook auth-token accountmanager
我正在尝试使用以下代码检索Facebook的AuthToken(由Facebook for Android保存).
AccountManager am = AccountManager.get(this);
Account[] accounts = am.getAccountsByType("com.facebook.auth.login");
if (accounts.length > 0) {
for(int j = 0; j < accounts.length; j++) {
Account account = accounts[j];
if(account.type != null && account.type.equals("com.facebook.auth.login")) {
Log.e(RuntimeVars.MY_NAME, "FACEBOOK-TYPE FOUND");
am.getAuthToken(account, "com.facebook.auth.login", null, ConversationList.this,
new AccountManagerCallback<Bundle>() {
public void run(AccountManagerFuture<Bundle> arg0) {
try {
Bundle b = arg0.getResult();
Log.e(RuntimeVars.MY_NAME, "THIS AUTHTOKEN: " + b.getString(AccountManager.KEY_AUTHTOKEN));
}
catch (Exception e) {
Log.e(RuntimeVars.MY_NAME, "EXCEPTION@AUTHTOKEN");
}
}
}, null);
}
}
}
Run Code Online (Sandbox Code Playgroud)
找到登录凭据并将FACEBOOK-TYPE FOUND写入LogCat,但不会记录THIS AUTHTOKEN:[...]和EXCEPTION @ AUTHTOKEN.所以我想am.getAuthToken从未被召唤过.
我错过了什么?
一般来说,如果有一个更好(并且至少工作)的方法从Android帐户检索Facebook authtoken请告诉我.
非常感谢你的帮助!
最好的问候
S.
为什么不使用Facebook SDK?
在Facebook它的类有一个成员获得的OAuth 2.0访问令牌(如果那是你所需要的), getAccessToken().
| 归档时间: |
|
| 查看次数: |
9329 次 |
| 最近记录: |