iOS 版 Facebook SDK 新手入门

iOS 版 Facebook SDK 是集成 iOS 应用与 Facebook 最简便的方法。其中包括:

您有两种方法设置应用,以便使用 Facebook SDK。如果您尚未在 Facebook 注册应用,最简单快速的方法是使用快速入门工具。另一种方法是跳过快速入门,使用下方的手册说明。

iOS 快速入门

第 1 步:为 iOS 配置 Facebook 应用设置

  1. 点击下方按钮打开 Facebook 应用面板并选择您的应用。
  2. 打开 Facebook 应用面板

  3. 从左侧导航栏选择设置
  4. 点击页面底部的添加开放平台,然后选择 iOS
  5. 在 Xcode 中找到捆绑标识符,并将它复制到剪贴板。
  6. 返回应用面板,将捆绑标识符粘贴到 Bundle ID 一栏。
  7. 启用单点登录
  8. 在应用面板窗口底部点击保存更改

第 2 步:下载 iOS 版 Facebook SDK

  1. 使用下方按钮下载 SDK。
  2. 下载 iOS 版 SDK

  3. 将存档解压缩至 ~/Documents/FacebookSDK

第 3 步:将 SDK 添加到项目

要在 Xcode 中添加 SDK:

  1. 打开应用的 Xcode 项目。
  2. 如果您的项目中没有 Frameworks(框架)组,请创建一个。
  3. 使用查找工具打开 ~/Documents/FacebookSDK
  4. Bolts.frameworkFBSDKCoreKit.frameworkFBSDKLoginKit.frameworkFBSDKShareKit.framework 文件拖到 Xcode 项目导航器Frameworks(框架)组中。在显示的对话框中,选择 Create groups for any added folders(为添加的文件夹创建组),取消选择 Copy items if needed(必要时复制项目)。这将按 SDK 的安装位置对其进行引用,而不是将 SDK 复制到应用中。
  5. 在项目中打开 Xcode 的 Build Settings(构建设置)选项卡。
  6. ~/Documents/FacebookSDK 添加到项目的 Framework Search Paths(框架搜索路径)设置。

您使用 Facebook SDK 时,如果未禁用事件自动记录功能,应用事件将被自动记录和收集,用于 Facebook 分析。关于哪些信息会被收集以及如何禁用事件自动记录的详细信息,请参阅应用事件自动记录

第 4 步:配置 Xcode 项目

  1. 在 Xcode 中打开工作区。
  2. 使用辅键点击信息属性列表文件 (info.plist) 并选择 Open As(打开方式) -> Source Code(源代码)
  3. 将以下 XML 代码片段插入文件正文,位于最后的 </dict> 元素前。
  4. <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. 替换以下代码:
    • fb{your-app-id} 替换为 Facebook 应用编号,加上前缀 fb。例如,如果您的 Facebook 应用编号为 1234567890,则将 fb{your-app-id} 替换为 fb1234567890。您可以通过 Facebook 应用面板找到应用编号。
    • 用应用编号替换 {your-app-id}
    • 使用您在应用面板中指定的显示名称替换{your-app-name}
    • 用您的应用需要获取照片访问权限的理由替换 {human-readable reason for photo access}
  6. 构建项目,然后在模拟器中运行项目。

第 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];
  // Add any custom logic here.
  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]
  ];
  // Add any custom logic here.
  return handled;
}

注意: 在上面的 -application:openURL:sourceApplication:annotation: 实施示例中,必须调用 FBSDKApplicationDelegate,中转深度链接才能正常运行。

第 6 步:添加应用事件

现在已完成对 SDK 的安装和配置,最简单的测试方法是向应用添加应用事件 (App Events)。应用事件能帮助您了解用户使用应用的情况。您可以从 14 种预定义事件中选择一个记录事件,例如:商业应用中的加入购物车,或游戏中的完成关卡。您还可以定义专属的自定义事件。

记录应用激活

要查看有多少用户在使用您的应用,请将以下代码添加到 AppDelegate.m 文件中,以便记录应用激活操作。

//  AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (void)applicationDidBecomeActive:(UIApplication *)application {
  [FBSDKAppEvents activateApp];
}

要验证记录:

  1. 编译并运行应用。
  2. 前往 Facebook 分析面板并选择您的应用。
  3. 打开 Facebook 分析

  4. 在左侧菜单中,选择活动 -> 事件

短暂延迟后,激活数据才会显示在事件面板中。如果您没有看到任何内容,请等待一分钟并刷新页面。

后续步骤

要了解如何对应用实施应用事件和其他 Facebook 产品,请点击下方其中一个按钮。

在 iOS 平台分享添加“Facebook 登录”添加应用事件使用图谱 APIiOS 版“赞”按钮
高级配置