Android FB SDK 登录 - 尽管安装了 FB 应用程序,但仍打开外部浏览器

问题描述 投票:0回答:2

我的Android应用程序集成了FB SDK登录。我打电话

LoginManager.getInstance().logIn

在一台设备上,即使安装了 FB 应用程序,我的应用程序的登录流程也不会打开 FB 应用程序,而是触发外部浏览器进行登录。如果我在那里输入凭据,则会出现错误“从嵌入式浏览器登录 Facebook 已被禁用” 可能是什么原因?

android facebook facebook-login facebook-sdk-4.0
2个回答
0
投票

可能是该设备上 Facebook 应用程序的设置,具体而言,该应用程序的 使用 Facebook 登录 设置可能设置为 禁用启用(仅限 Web)。禁用此设置后,Facebook 应用程序将不会处理来自其他应用程序的登录请求,而是将请求发送到网络浏览器。

您可以按照以下步骤检查和更改此设置:

1- 在设备上打开 Facebook 应用程序

2- 点击屏幕右上角的三条水平线打开菜单

3- 向下滚动到“设置和隐私”部分,然后点击“设置”

4- 向下滚动到“媒体和联系人”部分,然后点击“应用程序和网站”

5- 在“使用 Facebook 登录”下,确保启用切换。

发生这种情况的另一个原因是该应用程序使用的是旧版本的 Facebook SDK。确保您使用的是最新版本的 Facebook SDK。此版本的 SDK 将允许您指定登录流程的行为,无论是在 Facebook 应用程序中还是在浏览器中打开。


0
投票

另一种可能性是在 Android 11+ 上,您需要在 AndroidManifest.xml 中引用查询包。发帖以防这仍然与任何人相关。

<queries>
        <!-- Enable Facebook Express Login (via Facebook application - query package reference required for Android 11+ otherwise login will be via browser) -->
        <package android:name="com.facebook.katana" />
</queries>

更多详情:

https://developer.android.com/training/package-visibility/declaring#package-name https://developers.facebook.com/docs/facebook-login/android#expresslogin

© www.soinside.com 2019 - 2024. All rights reserved.