Primeros pasos con el SDK de Facebook para iOS

El SDK de Facebook para iOS es la forma más sencilla de integrar una aplicación para iOS con Facebook. Ofrece:

Puedes configurar tu aplicación de dos formas para utilizar el SDK de Facebook. Si no has registrado la aplicación en Facebook, la opción más rápida y sencilla es utilizar la herramienta de inicio rápido. La alternativa es omitir el inicio rápido y seguir las instrucciones manuales que figuran a continuación.

Inicio rápido para iOS

Paso 1: establecer la configuración de la aplicación de Facebook para iOS

  1. Abre el panel de aplicaciones de Facebook haciendo clic en el botón inferior y selecciona tu aplicación.
  2. Abrir panel de aplicaciones de Facebook

  3. Selecciona Configuración en el panel de navegación izquierdo.
  4. Haz clic en Añadir plataforma en la parte inferior de la página y selecciona iOS.
  5. Localiza el identificador de tu paquete en Xcode y cópialo en el portapapeles.
  6. Vuelve al panel de aplicaciones y pega el identificador del paquete en el campo Identificador de paquete.
  7. Activa el inicio de sesión único.
  8. Haz clic en Guardar cambios en la parte inferior de la ventana del panel de aplicaciones.

Paso 2: descargar el SDK de Facebook para iOS

  1. Descarga el SDK con este botón.
  2. Descargar el SDK para iOS

  3. Descomprime el archivo en ~/Documents/FacebookSDK.

Paso 3: añadir el SDK a un proyecto

Para añadir el SDK en Xcode:

  1. Abre el proyecto de Xcode de tu aplicación.
  2. Si no tienes un grupo Frameworks en el proyecto, crea uno.
  3. Abre ~/Documents/FacebookSDK con Finder.
  4. Arrastra los archivos Bolts.framework, FBSDKCoreKit.framework, FBSDKLoginKit.framework y FBSDKShareKit.framework al grupo Frameworks del navegador de proyectos de Xcode. Cuando se te pida, selecciona "Copy items if needed" y continúa.

Paso 4: configurar el archivo Info.plist

  1. En Xcode, haz clic con el botón derecho en el archivo Info.plist de tu proyecto y selecciona Open As -> Source Code.
  2. Inserta el siguiente fragmento de XML en el cuerpo del archivo, justo antes del elemento </dict> final.

  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. Reemplaza {your-app-id} y {your-app-name} con el nombre y el identificador de tu aplicación, que puedes consultar en el panel de aplicaciones de Facebook.

Paso 5: conectar el delegado de la aplicación

Para posprocesar los resultados de las acciones que te obligan a cambiar a la aplicación nativa de Facebook o a Safari, como el inicio de sesión con Facebook o los cuadros de diálogo de la plataforma, debes conectar la clase AppDelegate al objeto FBSDKApplicationDelegate. Para ello, añade el siguiente código a tu archivo 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;
}

Nota: En el ejemplo anterior de implementación del método -application:openURL:sourceApplication:annotation:, es necesaria la llamada a la clase FBSDKApplicationDelegate para que los enlaces profundos diferidos funcionen correctamente.

Paso 6: añadir eventos de la aplicación

Ahora que el SDK está instalado y configurado, la forma más sencilla de probarlo es añadir eventos a tu aplicación. Los eventos de la aplicación te permiten conocer cómo se utiliza tu aplicación. Para ello, registra eventos mediante una de las 14 opciones predefinidas (por ejemplo, artículo añadido al carrito en una aplicación comercial o nivel alcanzado en un juego). Puedes incluso definir tus propios eventos personalizados.

Registro de las activaciones de la aplicación

Para comprobar cuántas personas utilizan tu aplicación, registra las activaciones de esta añadiendo el siguiente código a tu archivo AppDelegate.m.

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

Para verificar el registro:

  1. Compila y ejecuta la aplicación.
  2. Ve al panel de Facebook Analytics y selecciona la aplicación.
  3. Abrir Facebook Analytics

  4. En el menú de la izquierda, selecciona Actividad -> Eventos.

Las activaciones tardarán un poco en mostrarse en el panel de eventos. Si no aparece nada, espera un minuto y actualiza la página.

Cuando utilizas el SDK de Facebook, los eventos de la aplicación se registran automáticamente y se recopilan para Facebook Analytics, a no ser que desactives el registro automático de eventos. Si quieres obtener información más detallada sobre los datos recopilados y cómo desactivar el registro automático de eventos, consulta el apartado sobre el registro automático de eventos de la aplicación.

Siguientes pasos

Para obtener información sobre cómo implementar los eventos y otros productos de Facebook en tu aplicación, haz clic en uno de los botones que figuran a continuación.

Compartir en iOSAñadir inicio de sesión con FacebookAñadir eventos de la aplicaciónUsar API Graph
Configuración avanzada