iOS用Facebook SDKスタートガイド

iOS用Facebook SDKを使用すると、iOSアプリをFacebookに簡単に統合できます。次の機能を利用できます。

アプリがFacebook SDKを使用するようにセットアップ方法は2通りあります。アプリケーションをFacebookに登録していない場合、クイックスタートツールを使用する方法が早くて簡単です。もう1つは、クイックスタートではなく、以下の手動による手順に従って進める方法です。

iOS用クイックスタート

ステップ1: iOS用にFacebookアプリ設定を構成する

  1. 次のボタンをクリックして、アプリケーションを選択し、Facebookのアプリダッシュボードを開きます。
  2. Facebookアプリダッシュボードを開く

  3. 左側のナビゲーションの[設定]を選択します。
  4. ページ下部の[プラットフォームを追加]をクリックし、[iOS]を選択します。
  5. XcodeのバンドルIDを調べて、クリップボードにコピーします。
  6. アプリダッシュボードに戻り、バンドルIDを[バンドルID]フィールドに貼り付けます。
  7. [シングルサインオン]を有効にします。
  8. アプリダッシュボードウィンドウ下部の[変更を保存]をクリックします。

常に最新バージョンにリンクさせるには、CocoaPodsを使用してFacebook iOS SDKにリンクさせます。

  1. ターミナルウィンドウのプロジェクトフォルダーに移動します。
  2. Facebookログインポッドを実装する前に、お使いのコンピューターにCocoaPods gemをインストールしておく必要があります。
    $ sudo gem install cocoapods
    $ pod init
    これにより、プロジェクトのルートディレクトリにPodfileという名前のファイルが作成されます。

  3. 以下をPodfileに追加します。
    pod 'FBSDKLoginKit'
  4. ターミナルウィンドウから、プロジェクトルートディレクトリで次のコマンドを実行します。
    $ pod install

ステップ3: Info.plistを構成する

  1. XcodeでプロジェクトのInfo.plistファイルを右クリックし、[Open As] -> [Source Code]の順に選択します。
  2. 次のXMLスニペットを、ファイル本文の最後の</dict>要素の直前に挿入します。

  3. <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-share-api</string>
      <string>fbauth2</string>
      <string>fbshareextension</string>
    </array>
  4. {your-app-id}{your-app-name}を、アプリのアプリIDとFacebookアプリダッシュボードにある名前に置き換えます。

ステップ4:アプリデリゲートに接続する

FacebookログインやFacebookダイアログなど、ネイティブのFacebookアプリやSafariに切り替えが必要なアクションの結果を後処理するために、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への呼び出しが必要です。

ステップ5: App Eventsを追加する

SDKのインストールと構成が終われば、App Eventsをアプリに追加してすぐにテストできます。App Eventsを使用すると、利用者がどのようにアプリを利用しているのか把握できます。これを行うには、事前定義されている14のイベントのいずれかを介してイベントをログ記録します。これらのイベントには、コマースアプリ用のカートに追加、ゲーム用のレベル達成などがあります。独自のカスタムイベントを定義することもできます。

アプリのアクティベーションをログ記録する

アプリケーションを利用している人の数を確認するには、AppDelegate.mファイルに次のコードを追加して、アプリのアクティベーションをログ記録します。

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

ログ記録を確認するには、次の手順に従います。

  1. アプリをコンパイルして実行します。
  2. Facebook Analyticsダッシュボードに移動して、アプリを選択します。
  3. Facebook Analyticsを開く

  4. 右側のメニューで[アクティビティ] -> [イベント]の順に選択します。

[イベント]ダッシュボードにアクティベーションの数が表示されるまで、少し時間がかかります。何も表示されない場合は、1分ほど待ってからページを更新してください。

Facebook SDKを使用する際は、イベントの自動記録を無効にしていない限り、アプリでいくつかのイベントが自動的にFacebook Analytics用に記録、収集されます。収集される情報やイベントの自動記録を無効にする方法については、アプリイベントの自動記録に関するページをご覧ください。

次のステップ

App Eventsや他のFacebook製品をアプリに実装する方法について詳しくは、以下のボタンをクリックしてください。

iOSでのシェアFacebookログインの追加App Eventsを追加するグラフAPIの使用
詳細設定