1

我需要在我的应用程序上集成一个“在 Facebook 上分享”按钮.. 遵循本指南

在此处输入链接描述

我在按钮上添加了一个侦听器,并在“onClick”中写道:

private static final String FACEBOOK_APPID      = "00000";
private static final String FACEBOOK_PERMISSION = "publish_stream";

    FacebookConnector facebookConnector = new FacebookConnector(FACEBOOK_APPID, activity, context, new String[] { FACEBOOK_PERMISSION });

    facebookConnector.login();

    //facebookConnector.postMessageOnWall("weeee");

我知道 APPID 号码,但是……facebook_permission (publish_stream) 是什么?

if I try without the facebook_permission I get a null pointer exception
4

3 回答 3

0

权限定义了您的应用程序被允许执行的操作

  • 贴在墙上
  • 阅读朋友状态(或类似的)

看这里:http: //developers.facebook.com/docs/howtos/androidsdk/3.0/fetch-user-data/#step2

您在代码中添加您的权限,例如

((com.facebook.widget.LoginButton) findViewById(YourLogInId)).setPublishPermissions(Arrays
        .asList("publish_stream"));
于 2013-04-16T14:56:46.467 回答
0

Facebook 上的权限基本上是询问用户您/您的应用程序试图完成什么。在您的示例中,您注意到了 publish_stream。这允许您通过您的应用在用户的墙上发布。另一个经常使用的权限是email.

请查看https://developers.facebook.com/docs/reference/login/#permissions并找到您要使用的权限:)

于 2013-04-16T14:57:24.257 回答
0

推荐

而不是创建一个 Facebook 分享按钮,你应该只使用一个基本的 Intent,使用ACTION_SEND一个按钮的点击动作。

这是因为如果用户没有 Facebook,那么您的应用程序将无法按预期工作,除非您添加一些特殊逻辑来检测是否安装了 Facebook 应用程序。

这是 ACTION_SEND 的最初原因。也许用户有 Twitter 而不是 facebook,你是说如果用户想在 Twitter 上分享他们不能?这似乎是一个不必要的限制。

我建议采用这种方法: How to add Facebook Share button in Android Application

关于你的问题

权限是由 facebook 应用程序定义的访问特定数据的权限。如果你想要用户的电子邮件,你会请求电子邮件权限,如果你想阅读提要,你需要提要权限。花一些时间阅读文档:

https://developers.facebook.com/docs/

于 2013-04-16T15:00:03.097 回答