Phonegap Cordova 使用 Facebook 登录

Posted

技术标签:

【中文标题】Phonegap Cordova 使用 Facebook 登录【英文标题】:Phonegap Cordova Login with Facebook 【发布时间】:2019-07-22 20:31:52 【问题描述】:

我是 Phonegap 的新手,我正在尝试在我的 Cordova 应用程序中添加 Facebook 登录,我尝试了 Plugin 和 Facebook SDK for javascript

插件:https://github.com/jeduan/cordova-plugin-facebook4

Facebook JavaScript SDK:https://developers.facebook.com/docs/facebook-login/web

在 sdk 和 javascript 插件中,我都遇到了困难。

插件:

The key hash does not match any stored key hashes

Facebook SDK JS:

Unable to load URL: The domain for this URL is not included in the application domains. In order to load this URL, add all domains and subdomains to the Application Domains field in the application settings.

我尝试将 localhost 添加为我的域但不起作用,并尝试在 Windows 中创建哈希,我生成了哈希并将其添加到我的 facebook 应用程序但仍然出现相同的错误。

有人知道吗?

<!--Version Phonegap-->
<preference name="cordova-ios" version="4.5.4" />
<preference name="phonegap-version" value="cli-8.0.0" />

Facebook 插件配置.xml:

<plugin name="cordova-plugin-facebook4" spec="~4.2.1">
    <variable name="APP_ID" value="XXXXXXXXX" />
    <variable name="APP_NAME" value="YYYYYY" />
</plugin>

Facebook 插件登录:

const permissions = new Array("email","public_profile");

        facebookConnectPlugin.login(permissions, function (userData) 
            console.log("UserInfo: ", userData);
        ,
          function loginError(error) 
            console.error(error)
          
        );

Facebook SDK JS:

FB.login(function (response) 
            if (response.status === 'connected') 
                // Logged into your app and Facebook.
             else 
                // The person is not logged into this app or we are unable to tell. 
            
        );

【问题讨论】:

【参考方案1】:

我找到了解决方法:

The key hash does not match any stored key hashes

我将我的 Facebook 应用设置为 android 平台并使用 (config.xml) 设置我的包名称:

widget id="com.XXXX.YYY.ZZZ"

还有我的班级名称,我关注this 并使用http://www.javadecompilers.com/result。

要生成我的哈希,我关注Muhammad Omar ElShourbagy solution。

一切正常。

【讨论】:

您如何解决无法加载 URL:此 URL 的域不包含在应用程序域中。要加载此 URL,请将所有域和子域添加到应用程序设置中的应用程序域字段。问题?

以上是关于Phonegap Cordova 使用 Facebook 登录的主要内容,如果未能解决你的问题,请参考以下文章

Cordova/Phonegap 1.6 媒体示例

Cordova/PhoneGap 打开下载的文件 (InAppBrowser)

HealthTap 是使用 phonegap cordova 开发的吗?

PhoneGap/Cordova:如何使用 cookie (iOS)?

桌面/移动标准网页中的phonegap / cordova社交共享插件

Phonegap Cordova 使用 Facebook 登录