裝置分享功能

透過裝置分享功能,用戶可以輕鬆地自各種裝置將內容分享至 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 提出裝置程序要求嗎?
帶有權杖的圖形 API 必須透過 TLS/HTTPS 提出要求。

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

可否得知用戶於何時完成分享?
不可以。

我是否能以程式代表用戶發佈貼文?
不可以。若要代表用戶發佈貼文,您必須先要求用戶登入並授予您代表對方發佈貼文的權限。請參閱「使用圖形 API 發佈」瞭解更多資訊。