裝置分享功能

有了裝置分享功能,用戶就可以輕易地從裝置分享內容至 Facebook。這些裝置包括智能電視、數碼相框和互聯網裝置。

有了裝置分享功能,您的裝置會顯示出英數代碼,並要求用戶在桌面電腦或智能手機的網頁上輸入該代碼。您的應用程式或服務用戶就可以使用與該代碼關聯的分享對話框,分享內容至 Facebook。

如果您正在建立 Apple TV 或 Android 裝置專用的應用程式,您應該分別使用我們的 tvOS 專用 SDKAndroid 專用 SDK

這份指南描述的內容如下:

用戶體驗

1.呼籲字句

首先考慮您想在用戶體驗的哪一部分要求用戶分享內容至 Facebook。為了確保提供最佳體驗,盡量仿照官方 Facebook「分享」按鈕設計您的按鈕。一般而言,按鈕應置於欲分享內容的旁邊。

從視覺設計觀點來看,這代表您應該

  1. 以「分享」或「分享至 Facebook」標示按鈕。
  2. 使用白色和官方 Facebook 品牌藍色:#3B5998。
  3. 如果您的裝置支援圖形顯示,您也可以整合官方「f」標誌。根據 Facebook 品牌指南,標誌應該永遠是白色或是 Facebook 藍(#3B5998)。

2.顯示代碼

當有人點擊呼籲字句時,您的裝置會對傳回程式碼的 Facebook 的 API 進行調用。

在您的介面中,告訴用戶要到訪網站,且輸入含以下訊息的代碼,例如「下一步,使用桌面電腦或智能手機到訪 facebook.com/device(http://facebook.com/device),然後輸入這組代碼」。 顯示您從 Facebook 裝置分享 API 收到的完整代碼。這個代碼長度介於 6 到 12 個字元。

您可以加入 CloseDone 按鈕,讓用戶可以完成裝置分享流程。

3.分享

這是用戶在桌面電腦或智能手機瀏覽器到訪 facebook.com/device 時所看到的流程。首先用戶會看到可輸入代碼的文字欄位:

用戶輸入代碼並點擊 Continue 後,他們就會看到「分享對話框」:

因此用戶就可以知道已經成功分享,接著他們會看到確認訊息:

建置裝置分享功能

Facebook 裝置分享功能可以讓裝置透過網絡執行 HTTP 調用。以下是您的裝置可以進行的 API 調用和回應。

1.啟用裝置專用登入

載入您的應用程式管理中心,然後將「設定」>「進階」>「OAuth 設定」>「從裝置登入」改為「是」。

2.產生代碼

當用戶點擊 Share 呼籲字句時,您的裝置應該會執行指向下列項目的 HTTP POST:

POST https://graph.facebook.com/device/share
       access_token=<APPID|CLIENT_TOKEN>
       href=<LINK_TO_SHARE>

您可以在應用程式設定 -> 進階中找到 CLIENT_TOKEN,該憑證應結合您的應用程式編號(並以管線隔開: |),以呈現完整的 access_token

如果您想分享開放式圖表動態(如同分享對話框中的開放式圖表動作的操作方式),API 也支援 action_typeaction_properties,但不支援 href

此外,API 也支援 quotehashtag 參數(如同分享對話框參數的操作方式)。

回應形式如下:

{
  "user_code": "A1NWZ9",
  "verification_uri": "https://www.facebook.com/device",
  "expires_in": 420,
}

這個回應代表:

  1. 在您的裝置顯示「A1NWZ9」字串。
  2. 要求用戶前往「facebook.com/device」並輸入這個代碼。
  3. 這個代碼將在 420 秒後到期。時間到期後請關閉該顯示代碼。

3.顯示代碼

您的裝置應該要顯示出 user_code,要求用戶在電腦或智能手機上到訪 verification_uri,例如 facebook.com/device。請參閱用戶體驗

解決疑難

我可以透過 HTTP 提出裝置程序要求嗎?
設有憑證的 Graph API 需要 TLS/HTTPS。

我可以透過 GET 方法提出裝置程序要求嗎?
所有裝置程序要求都應該是 POST 要求。

是否能判斷用戶何時完成分享?
否。

是否可以讓程式代替用戶發佈內容?
否。若要代替用戶發佈內容,您必須要求用戶登入並授權給您才行。請參閱使用 Graph API 發佈內容以瞭解詳情。