繁体   English   中英

适用于Android的Facebook SDK 3-使用facebook应用程序登录

[英]Facebook SDK 3 for Android - Login using facebook app

现在,我在应用程序中添加了一个Facebook LoginButton,以允许使用Facebook登录。 “默认”行为是这样的(我没有做太多修改):

方案(A)如果用户安装了正式的facebook应用程序,它将调用该应用程序,并自动登录,并显示一个对话框,要求获得许可。 方案(B)否则,如果用户没有facebook应用程序,则会弹出一个网页(如WebView),要求用户登录,然后通过Web界面请求权限。

它的行为如下: Facebook登录无法与Facebook应用程序一起使用

在这两种情况下,我的应用程序都可以在AVD模拟器上正常运行,但是在我的实际设备上无法使用“情况(A)”。 登录后,显示

在此处输入图片说明

有人面临同样的问题吗? 有没有办法解决这个问题? 还是有一种强制应用程序使用Web界面执行登录的方法?

非常感谢!

以下是Java和XML布局代码:

LoginButton authButton = (LoginButton) view.findViewById(R.id.fb_loginBtn);
    authButton.setFragment(this);
    authButton.setReadPermissions(Arrays.asList("basic_info", "email", "read_friendlists"));
    authButton.setOnErrorListener(fbErrorListener);
    authButton.setSessionStatusCallback(callback);

<com.facebook.widget.LoginButton
                xmlns:fb="http://schemas.android.com/apk/res-auto"
                android:id="@+id/fb_loginBtn"
                android:layout_width="200dp"
                android:layout_height="50dp"
                android:layout_gravity="center_vertical|center_horizontal"
                android:background="@drawable/reg_fb"
                fb:login_text="Facebook" />

不建议仅使用网络,但如果确实需要,则:

LoginButton authButton = (LoginButton) view.findViewById(R.id.authButton);
//other code ...
authButton.setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO);

请更新您安装的facebook应用程序。 根据我的工作经验,Facebook SDK openGraph支持Facebook应用程序版本1.9.8到当前版本

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM