1

在我的应用程序中,用户可以登录 facebook 并分享我的应用程序详细信息。它的工作很好。但是当用户有一个官方的 facebook 应用程序并且如果用户通过该官方应用程序登录或者在没有注销或启动我的应用程序之后,当单击该 facebook 登录时,用户可以自动登录到该 facebook 登录 ID 和密码。但我需要在我的应用程序用户中再次输入用户名和密码。我怎样才能做到这一点。请帮助我。谢谢你。

4

2 回答 2

3

简短的回答:

你不能。

长答案:

Facebook 创建 SSO(单点登录)的明确原因是让第三方应用程序用户的身份验证更容易。更不用说,保持实际身份验证的安全。

要让用户从第三方应用程序向 Facebook 进行身份验证,有 3 种方法。从技术上讲,有两种方法,但第三种方法是禁用 SSO 并强制使用基于浏览器的应用程序。

  1. 如果用户没有在他的设备上安装 Facebook 应用程序,则网页将执行身份验证职责。
  2. 如果用户设备上安装了 Facebook 应用程序,则身份验证将通过 SSO 完成。
  3. 最后一个被一些开发人员使用。这是通过使用FORCE_DIALOG_AUTHDEFAULT_AUTH_ACTIVITY_CODE 来实现的,您在应用程序中执行身份验证部分。但不建议这样做,因为它可能会向恶意应用程序打开您的应用程序,这些应用程序可以窃取您用户的 Facebook 凭据(来源:Jesse Chen的回答,他在 Facebook 工作。https://stackoverflow.com/a/12433933/450534。如果你仍然想使用它

底线是,您不能让用户从您的应用程序进行身份验证。您将需要使用 Facebook 方式进行操作。

于 2012-11-10T13:26:18.517 回答
3

在 Facebook 身份验证方法中使用它

private void authenticate() {
    mFacebook.authorize(this, permissions, Facebook.FORCE_DIALOG_AUTH,
        new DialogListener(){

这将对您有所帮助。

于 2012-11-10T13:46:26.250 回答