Facebook iOS SDK 新手指南
若要將您的 iOS 應用程式與 Facebook 整合,Facebook iOS SDK 是最簡單的方式。此 SDK 提供了下列功能:
- Facebook 登入 - 使用 Facebook 憑證驗證用戶。
- 分享和發送對話方塊 - 讓用戶可從您的應用程式分享內容至 Facebook。
- 應用程式事件 - 在您的應用程式中記錄事件。
- Graph API - 讀取與寫入 Graph API。
有兩種方法可用於設定應用程式來使用 Facebook SDK。如果尚未在 Facebook 註冊您的應用程式,使用「快速入門」工具是最簡單快速的方法。也可略過「快速入門」,而改用以下的手動指示。
iOS 快速入門步驟 1:針對 iOS 設置 Facebook 應用程式設定
- 點擊底下的按鈕以開啟 Facebook 應用程式主控板,並選擇您的應用程式。
- 從左側導覽中選擇設定。
- 點擊頁面底端的新增平台,然後選擇 iOS。
- 在 XCode 中找到您的套件組合識別碼,然後將其複製到剪貼簿。
- 返回應用程式主控板,然後將您的套件組合識別碼貼到套件組合編號欄位中。
- 啟用單一登入。
- 點擊應用程式主控板視窗底部的儲存變更。


步驟 2:下載 Facebook iOS SDK
- 使用底下的按鈕下載 SDK。
將封存檔案解壓縮至
~/Documents/FacebookSDK。
步驟 3:將 SDK 加入專案
若要在 Xcode 中新增 SDK:
- 開啟應用程式的 Xcode 專案。
- 如果專案中沒有 Frameworks 群組,請建立該群組。
- 使用 Finder 開啟
~/Documents/FacebookSDK。 - 將 Bolts.framework、FBSDKCoreKit.framework、FBSDKLoginKit.framework 和 FBSDKShareKit.framework 檔案拖曳至 Xcode Project Navigator(專案導覽器)中的 Frameworks 群組。在顯示的對話方塊中,選擇 Create groups for any added folders(為任何新增的資料夾建立群組),並取消選取 Copy items into destination group's folder(將項目複製到目的地群組的資料夾)。這樣會參照您安裝的 SDK 位置,而不會將 SDK 複製到應用程式中。
- 在專案中開啟 Xcode 的 Build Settings(組建設定)頁籤。
- 將
~/Documents/FacebookSDK加入專案的 Framework Search Paths(架構搜尋路徑)設定。
步驟 4:設定 Xcode 專案
- 在 Xcode 中,於專案的 .plist 檔案上點擊滑鼠右鍵,然後選擇 Open As(開啟方式)-> Source Code(原始碼)。
將以下 XML 程式碼片段插入檔案內文,緊接在最後的
</dict>元素之前。- 以您的 Facebook 應用程式編號(並加上 fb 為字首)取代 fb{your-app-id}。例如,fb123456。您可以在 Facebook 應用程式主控板上找到您的應用程式編號。
- 以您的應用程式編號取代 {your-app-id}。
- 以您在應用程式主控板中指定的顯示名稱取代 {your-app-name}。
- 以您的應用程式需要相片存取權的原因取代 {human-readable reason for photo access}。
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb{your-app-id}</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>{your-app-id}</string>
<key>FacebookDisplayName</key>
<string>{your-app-name}</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
<key>NSPhotoLibraryUsageDescription</key>
<string>{human-readable reason for photo access}</string>
步驟 5:連接應用程式委派
對於需要您切換至原生 Facebook 應用程式或 Safari(例如 Facebook 登入或 Facebook 對話方塊)的動作,若要後續處理這些動作產生的結果,您必須將 AppDelegate 類別連接至 FBSDKApplicationDelegate 物件。為了完成此設定,請將以下程式碼加入 AppDelegate.m 檔案。
// AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
// 在此處加入任何自訂邏輯。
return YES;
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
BOOL handled = [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]
];
// 在此處加入任何自訂邏輯。
return handled;
}注意:在以上的 -application:openURL:sourceApplication:annotation: 實作範例中,必須呼叫 FBSDKApplicationDelegate 才能使延遲深層連結正確運作。
步驟 6:新增應用程式事件
現在已安裝並設定 SDK,最簡單的測試方法就是將應用程式事件新增至您的應用程式。應用程式事件可協助您瞭解用戶如何使用您的應用程式。透過記錄 14 種預先定義事件的其中一種(例如在商務應用程式中記錄已加到購物車,或在遊戲中記錄破關),就能達成這個目的。您甚至也可以定義自訂事件。
記錄應用程式啟動
若要瞭解有多少用戶使用您的應用程式,請將以下程式碼加入 AppDelegate.m 檔案,即可記錄應用程式啟動。
// AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}若要確認紀錄:
- 編譯並執行應用程式。
- 前往應用程式分析工具主控板,並選擇您的應用程式。
- 在左側的功能表中,選擇活動->事件。
事件主控板會需要些許時間,才會顯示您的啟動事件。如果沒看到任何資訊,請稍候片刻再重新整理頁面。
後續步驟
若要瞭解如何在應用程式中實作應用程式事件和其他 Facebook 產品,請點擊底下的按鈕。
在 iOS 中分享新增「Facebook 登入」新增應用程式事件使用 Graph APIiOS 專用的「讚」按鈕進階設定