通过android中的帐户管理器检索在移动设备中配置的facebook帐户的身份验证令牌

通过android中的帐户管理器检索在移动设备中配置的facebook帐户的身份验证令牌,android,facebook,oauth-2.0,accountmanager,Android,Facebook,Oauth 2.0,Accountmanager,我正在尝试通过android中的帐户管理器,使用 accountManager.getAuthToken(account,"user_activities",null,Hellol10n.this, new GetAuthTokenCallback(), null);// account is of type "com.facebook.auth.login" 但是我没有得到任何结果。根本没有调用回调 facebook是否支持这种获取身份验证令牌的方式。Facebook确实使用oauth2

我正在尝试通过android中的帐户管理器,使用

accountManager.getAuthToken(account,"user_activities",null,Hellol10n.this, new   GetAuthTokenCallback(), null);// account is of type "com.facebook.auth.login"
但是我没有得到任何结果。根本没有调用回调

facebook是否支持这种获取身份验证令牌的方式。Facebook确实使用oauth2。那么看看

本课程演示如何连接到支持OAuth2的Google服务器。尽管谷歌服务被用作示例,但演示的技术将适用于任何正确支持OAuth2协议的服务。”

此外,我正在尝试这样做,因为我不希望用户键入他已经在设备中配置的帐户的凭据,以简化用户体验

更新:


此外,即使未安装facebook应用程序,帐户管理器也有一个类型为“com.sec.android.app.snsaccountfacebook.account_type”的fb帐户。是否无法获取此帐户的身份验证。帐户类型“com.sec.android.app.snsaccountfacebook.account_type”和“com.facebook.auth.login”之间有什么区别“在“客户经理”中,我建议使用。如果用户有Facebook应用程序,则SSO只需切换到该应用程序进行身份验证和授权,无需重新输入用户名/密码。如果用户没有Facebook应用程序,那么accountManager.getAuthToken机制无论如何都不会工作,因为Android不会有帐户信息。

除非Facebook参考中记录了这一点,否则它很可能不受支持。“user_activities”字符串是从哪里获得的?我从该页面获得的,它既没有提到tokenType,也没有提到
AccountManager
。我认为该权限可以用于像google的scope这样的token类型。我自己试过了。我不知道这是否正确。但是你认为有什么缺陷吗?你发现的完全无关。您尝试执行的操作可能是可能的,但您需要知道正确的令牌类型。请访问Facebook SDK支持或相关论坛。但是,这完全可能不受支持,因此您必须使用他们的SDK.Thanx Ming Li。我理解并尝试过。工作正常。但我正在尝试使用相同的帐户管理器代码,无论服务提供商(谷歌、facebook)如何,都可以获取身份验证令牌。我为这件事伤了脑筋。您能否通过客户经理告诉我这是否可行。使用SDK的方式与我预期的方式相同。李丹明