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. En el cuadro de diálogo que aparece, elige Create groups for any added folders y desmarca Copy items if needed. Mediante esta opción se accede al SDK donde se haya instalado, en lugar de copiarlo en la aplicación.
  5. Abre la pestaña Build Settings de Xcode en tu proyecto.
  6. Añade ~/Documents/FacebookSDK al ajuste Framework Search Paths del proyecto.

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.

Paso 4: configurar el proyecto de Xcode

  1. Abre el espacio de trabajo de Xcode.
  2. Haz clic con el botón derecho del ratón en el archivo de lista de propiedades info.plist y selecciona Open As -> Source Code.
  3. Inserta el siguiente fragmento de XML en el cuerpo del archivo, justo antes del elemento </dict> final.
  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. Sustituye el siguiente código:
    • Sustituye fb{your-app-id} por tu identificador de aplicación de Facebook, precedido de fb. Por ejemplo, si tu identificador de la aplicación de Facebook es 1234567890, sustituye fb{your-app-id} por fb1234567890. Puedes encontrar este identificador en el panel de aplicaciones de Facebook.
    • Reemplaza {your-app-id} por el identificador de la aplicación.
    • Sustituye {your-app-name} por el nombre para mostrar que hayas especificado en el panel de aplicaciones.
    • Sustituye {human-readable reason for photo access} por el motivo por el que tu aplicación necesita acceder a las fotos.
  6. Compila el proyecto y ejecútalo en el simulador.

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.

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 GraphBotón “Me gusta” para iOS
Configuración avanzada