Facebook赞按钮+ Phonegap

时间:2014-06-02 15:49:33

标签: facebook cordova facebook-like phonegap-build

我试图在我的Phonegap(HTML + JS)应用中使用Facebook Like按钮,但它不起作用。

如果我在浏览器中进行测试(本地测试),则会出现按钮。

但是当我使用Phonegap BUild构建它并在我的智能手机中运行时,按钮不会显示。

我使用以下代码:

<div class="fb-like" data-href="https://www.facebook.com/pages/Save-Points/293951217439051" data-layout="standard" data-action="like" data-show-faces="true" data-share="true"></div>

1 个答案:

答案 0 :(得分:1)

实现类似操作的当前方法是使用开放图形对象og.like - FB的文档here。请注意,此方法需要用户publish_actions权限,这一点很重要。让这一切顺利进行是一项工作,但这是可能的。

phonegap-facebook-plugin提供了指南here。以下是我的一些评论说明:

  
      
  • 您喜欢的按钮不能与Facebook按钮
  • 相同(图形化)   

这意味着没有“竖起大拇指”的符号 - 非常沮丧!

  
      
  • 当您显示页面/按钮时,您必须首先调用getLoginStatus方法以了解当前用户是否已连接到其Facebook帐户。如果他已连接,则使用g3返回的Facebook访问令牌调用GET https://graph.facebook.com/me/og.likes?access_token=FB_ACCESS_TOKEN&object=URL_TO_LIKE。 etAccessToken方法(如果这返回数据然后用红色的心设置你喜欢的按钮,例如,如果调用返回一个空数组则为灰心)。
  •   

除了检查用户是否已登录,重申您必须检查您的应用是否具有publish_actions用户权限。虽然你可以通过Like行动来请求。

此外,该数组位于响应对象的data属性中。如果您要检查用户是否喜欢此网址,您基本上要检查response.data.length > 0

  

执行此操作后,用户已成功使用该URL,现在GET方法将返回包含一个对象的数组。当用户已经喜欢该URL时调用此方法将导致错误。

  

不同的(DELETE)方法与其他方法不同 - 它不是基于/me,而是通过URL过滤,您使用类似的ID。您可能需要调用之前描述的GET方法来获取ID(执行response.data[0].id)。