0

我正在为 android 开发一个应用程序,它将利用 google 身份工具包进行身份验证。此外,从认证中获得的令牌将被中间服务器用于从用于认证的适当社交网络(例如 Facebook)中检索朋友列表。为此,我假设我需要从 Google 开发人员控制台检索到的 Web 应用程序的 OpenID,对吗?然后,中间服务器会有一个rest api供android应用程序联系和执行登录?

在 Facebook 上,我应该配置两个不同的应用程序吗?一个用于网络,另一个用于 android。

该架构将类似于: 在此处输入图像描述

亲切的问候

4

1 回答 1

1

您只需要在 Facebook 创建一个应用程序,但该应用程序应包含两个平台(一个是 Android,另一个是 Web)。有关说明,请参阅https://developers.google.com/identity/toolkit/android/quickstart#optional_step_4_facebook_integration

在您的 Android 应用程序中,您可以在使用 GitkitClientBuilder.addScopes(IdProvider.FACEBOOK, Arrays.asList("user_friends")) 初始化 GitkitClient 时添加所需的范围。有关 API 参考,请参阅https://developers.google.com/identity/toolkit/android/reference/com/google/identitytoolkit/GitkitClientBuilder

用户登录您的 Android 应用后,您可以使用 Session.getActiveSession().getAccessToken() 获取 Facebook 访问令牌,并将访问令牌发送到您的服务器。然后,您的服务器可以使用该访问令牌调用 Facebook Graph API。

于 2015-06-11T03:27:21.550 回答