2010-01-26 88 views
5

我需要一个Facebook应用程序,那种坐在用户操作的“背景”中。一旦应用程序由用户安装,它将继续发送用户的状态更新,新朋友连接等到我的另一个Web应用程序。无论应用页面是否打开,它都会继续获取信息。是否有可能拥有“背景”Facebook应用程序?

我的问题是 - 这可能吗?到目前为止,我已经玩过一个用Java API编写的简单的iFrame应用程序。看起来它只能在页面被击中时执行数据收集。

编辑:隐私绝对是一个有效的关注点。但是,即使FB API没有内置,应用程序也一定会提示许可。

+5

作为一个偶然的Facebook用户谁是有点担心隐私保护,我希望这个问题的答案将是“不” ... :) – stakx 2010-01-26 00:42:25

+4

我当然希望不会。 – BoltBait 2010-01-26 00:43:11

+0

这是违反他们的使用条款,应该是。 – 2010-01-26 00:51:35

回答

1

您可以通过使用fb:prompt-permission FBML tag<fb:prompt-permission perms="offline_access">Can I have access to your data all the time?</fb:prompt-permission>向用户询问offline_access extended permission,将用户的会话密钥存储在数据库中,然后根据需要查询Facebook API。 (您可能需要其他的扩展权限,如果有,你要访问其他数据是不是一个标准的API调用)。

注意,这不属于违反服务条款,但你将不会被允许存储您收到的任何数据超过24小时。

+0

感谢您的回答。现在我要去挖掘如何做到这一点的Java API ...:D – tomato 2010-01-27 18:54:45

0

没有。 Facebook不希望一般的应用程序拥有太多的用户数据,当用户没有主动与应用程序交互时,肯定不希望他们访问它。

哎呀,无限的会话密钥,甚至没有支持了。那些仍然在附近都已经盛大英寸

+0

默认情况下,无限会话已被删除,但仍然通过offline_access扩展权限支持无限会话密钥。看到这个页面的下半部分:http://wiki.developers.facebook.com/index.php/Authorizing_Applications#About_Session_Keys – 2010-01-26 10:37:45

1

我不会建议它,但如果你创建一个“应用程序”有一个关联的用户帐户,然后你问Facebook应用程序的用户添加为朋友,那么你可以在问题中达到你想要的。

例如,让我们说你的应用程序是iFacebook - 那么你创建一个名为iFacebook朋友一个普通用户帐户,并要求您iFacebook应用的用户iFacebook朋友加入到他们的朋友(*)列表。然后,您可以通过常规Facebook帐户“iFacebook Friend”从应用用户那里抓取数据。

但是,这样做很可能将违反Facebook的一些使用策略,并能可能让你禁止,或报告为隐私侵犯的应用程序。然而,如果你的应用的功能足够有用,一些人会很乐意让隐私去...

(*)你可以通过给予奖励,如奖励积分,额外的'东西'来诱使他们这样做只有那些加了朋友的人才会得到。

+0

尽管你的答案在技术上是正确的,但我想把它投下来,因为这在道德上是错误的,是。我希望你善用你的技能而不是邪恶,Chii :) – ewall 2010-01-26 04:28:16

+0

好吧,我尽量使用我的技能,但是有时候邪恶会付出更多的不幸。然而,有些事情我不会这样做,而我上面的答案是我可能不会这样做的那个=) – Chii 2010-01-26 06:41:42

+0

创建关联的用户帐户在这里肯定是一个有趣的方法。谢谢(你的)信息。 :) – tomato 2010-01-27 18:35:07

相关问题