2009-10-22 47 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