2009-10-22 46 views
5

我正在寻找类似于iPhone平台的iPhone Facebook Connect(https://github.com/facebook/facebook-ios-sdk)的解决方案。基本上,我需要我的用户在本地BlackBerry应用程序中对Facebook进行身份验证(因此,不是基于Web的移动应用程序)。有没有我可以使用的图书馆,如果没有,那么实现这一目标的正确方法是什么?Facebook Connect for BlackBerry

在此先感谢!

+0

你得到这个工作?希望得到一些帮助。谢谢。 – lostInTransit 2009-11-02 09:41:53

+0

lostInTransit - 尚未(有一些意想不到的工作要做)。一旦我得到这个工作,我会在这里更新。 – Gadi 2009-11-08 14:35:32

回答

4

黑莓选项包括:

+0

Coldice - 谢谢。尽管SMS交互API和FB Connect for Mobile Web不能满足我的需求,但我认为移植JavaFB的选项可行(我找到了更接近的项目 - http://fbconnect-android.googlecode.com/ Android Facebook ),我会尝试这种方法。 – Gadi 2009-11-01 07:05:43

+0

不客气! – 2009-11-01 10:04:18

+0

你能否更新链接? – tipycalFlow 2011-11-14 05:15:14

3

我设法去通过我的BB应用程序中的Facebook Connect身份验证。在三天内破解了我的头脑之后,我意识到这是网址是罪魁祸首!

基本上这些都是你所需要的(假设你4.5平台的开发者):

  1. 使用浏览器领域,做通过所有必要的参数作为每一个POST到http://m.facebook.com/login.php(Facebook的移动版)桌面应用程序的同行(一个挑战是让签名生成正确)。
  2. 用户成功授予访问权限后,捕获成功屏幕的URL。你将获得你的auth_token。
  3. 根据您获得的auth_token,向REST服务器发出POST以获取会话密钥和秘密。
  4. 保存返回的会话密钥和秘密,坚持它,和wholla!您的应用已启动并正在运行。

我正在开发一个自定义LoginScreen和FacebookFacade对象,以合并上面的前三个步骤,如果任何人有兴趣重新使用我的代码。这将是GPL,我想;)

+0

Hiii ...如果你能提供一瞥yuor代码,我将会非常感激......我的电子邮件ID是[email protected] – tek3 2009-11-05 08:16:44

+0

我还想问一个问题......如何捕获成功屏幕的URL以获取auth_token ... – tek3 2009-11-05 08:18:42

+0

使用BrowserContent,您可以使用getURL()捕获URL并相应地解析响应。我将尽快整理完整的代码,因为我正在整理它。 – Eki 2009-11-05 17:18:38

1

Afzal,我有一个类似的问题,我发现我实际上有我的连接字符串的问题。你可以看一下下面的链接没有用于创建正确的连接字符串一些说明和代码 http://www.localytics.com/blog/post/how-to-reliably-establish-a-network-connection-on-any-blackberry-device/

,只是它打开连接添加连接字符串FetchThread:

连接=(HttpConnection的)连接器。开(absoluteUrl + getConnectionString());

+0

Guy Ephraim, 正如我所提到的,Facebook连接页面中的所有其他链接除了登录按钮时输入正确的电子邮件和密码。 我在每个URL中使用“; inteface = wifi”。我不知道什么是错的。 请帮忙。 Afzal – Afzal 2010-01-25 06:30:08

+0

好吧我认为现在它的工作原理(我也添加了连接字符串到FacebookFacade类以及)。 我看到“朋友列表”按钮的屏幕,但当我调试它时,应用程序没有从Facebook的“秘密”。它有“session_key”,但Facebook没有返回秘密。我得到的响应如下: “session_key”:“XXXXXXXXXX-XXXX”,“uid”:XXXXX,“expires”:0,“base_domain”:“ABC.com” 但绝非秘密!没关系?如果我还需要一个秘密呢?我可以得到吗? – Afzal 2010-01-25 10:00:40

+0

干了!我添加了一个参数 arguments.put(“generate_session_secret”,“true”); in getSession(String token)并从签名中删除session_secret。 谢谢你们,你们都是很棒的帮手! Afzal – Afzal 2010-01-25 10:58:59