Introducción a las extensiones de iOS

Importante

Visual Studio App Center está programado para la retirada el 31 de marzo de 2025. Aunque puede seguir usando Visual Studio App Center hasta que se retire por completo, hay varias alternativas recomendadas a las que puede considerar la posibilidad de migrar.

Obtenga más información sobre las escalas de tiempo de soporte técnico y las alternativas.

Las extensiones de aplicación solo admiten informes de bloqueos.

Para obtener información sobre cómo agregar el SDK de App Center a la aplicación contenedora, consulte la documentación de App Center iOS Introducción.

Vamos a empezar a configurar el SDK de iOS de App Center en la extensión de la aplicación para usar bloqueos de App Center.

1. Prerrequisitos

Se deben cumplir los siguientes requisitos para usar el SDK de App Center:

  • El proyecto de iOS está configurado en Xcode 13 o posterior en macOS versión 10.14.4 o posterior.
  • Tiene como destino dispositivos que se ejecutan en ios 11.0 o posterior.
  • No está usando ninguna otra biblioteca que proporcione la funcionalidad informes de bloqueos.

2. Creación de la aplicación en el portal de App Center para obtener el secreto de la aplicación

Si ya ha creado la aplicación en el portal de App Center, puede omitir este paso.

  1. Vaya a appcenter.ms.
  2. Regístrese o inicie sesión y presione el botón azul en la esquina superior derecha del portal que dice Agregar nuevo y seleccione Agregar nueva aplicación en el menú desplegable.
  3. Escriba un nombre y una descripción opcional para la aplicación.
  4. Seleccione iOS como sistema operativo y Objective-C/Swift como plataforma.
  5. Presione el botón situado en la parte inferior derecha que dice Agregar nueva aplicación.

Una vez que haya creado una aplicación, puede obtener su secreto de aplicación en la página Configuración del portal de App Center. En la esquina superior derecha de la página Configuración , haga clic en los puntos verticales triples y seleccione Copy app secret para obtener el secreto de la aplicación.

Nota

El uso de un secreto de aplicación existente de otro proyecto de iOS tiene efectos secundarios. App Center no admite el filtrado por proyecto en la misma aplicación de App Center. Por ejemplo, la lista de bloqueos de una versión determinada mostrará todos los bloqueos de ambos proyectos para esta versión sin distinción. Puede ser confuso.

Nota

En la 4.0.0 versión de App Center se introdujeron cambios importantes. Siga la sección Migrar a App Center SDK 4.0.0 y versiones posteriores para migrar App Center desde versiones anteriores.

3. Adición de los módulos del SDK de App Center

El SDK de App Center se puede integrar en la aplicación a través de Cocoapods, Carthage o agregando manualmente los archivos binarios al proyecto.

3.1 Integración a través de Cocoapods

  1. Agregue las siguientes dependencias a podfile para incluir bloqueos de App Center en la aplicación. Esto extrae los siguientes marcos: AppCenter y AppCenterCrashes.

     pod 'AppCenter/Crashes'
    
  2. Ejecute pod install para instalar el pod recién definido y abrir el proyecto .xcworkspace.

Nota

Si ve un error como [!] Unable to find a specification for `AppCenter` al ejecutar pod install, ejecute pod repo update para obtener los pods más recientes del repositorio Cocoapods y, a continuación, ejecute pod install.

Ahora que ha integrado los marcos de trabajo en la aplicación, es el momento de iniciar el SDK y usar los servicios de App Center.

3.2 Integración a través de Carthage

A continuación se muestran los pasos para integrar el SDK de App Center en el proyecto de Xcode mediante Carthage versión 0.30 o posterior, un administrador de dependencias descentralizado que compila las dependencias y proporciona marcos binarios.

  1. Agregue las siguientes dependencias a Cartfile para incluir App Center en la aplicación. Esto extrae todos los marcos de trabajo. A continuación, solo puede vincular esos marcos para usarlos en la aplicación.

    # Use the following line to get the latest version of App Center
    github "microsoft/appcenter-sdk-apple"
    
    # Use the following line to get the specific version of App Center
    github "microsoft/appcenter-sdk-apple" ~> X.X.X
    
  2. Ejecute carthage update. Esto captura las dependencias en una carpeta Carthage/Checkouts y, a continuación, compila cada marco.

  3. Abra la pestaña Configuración general del destino de la aplicación. Arrastre y coloque los archivos AppCenter.framework y AppCenterCrashes.framework desde la carpeta Carthage/Build/ en Project Navigator de Xcode. El archivo AppCenter.framework es necesario para iniciar el SDK. Si no se agrega al proyecto, los demás módulos no funcionarán y la aplicación no se compilará.

  4. Aparecerá un cuadro de diálogo y asegúrese de que el destino de la aplicación esté activado. Haga clic en Finalizar.

    Nota

    Si usa carthage copy-frameworks en la fase de compilación , no debe agregar los SDK de App Center allí, ya que se envían como marcos estáticos.

Ahora que ha integrado los marcos de trabajo en la aplicación, es el momento de iniciar el SDK y usar los servicios de App Center.

3.3 Integración a través del Administrador de paquetes Swift

  1. En el menú Xcode, haga clic en File Swift Packages > Add Package Dependency (Agregar dependencia de paquetes swift de archivo>).
  2. En el cuadro de diálogo que aparece, escriba la dirección URL del repositorio: https://github.com/microsoft/appcenter-sdk-apple.git.
  3. En Versión, seleccione Hasta siguiente principal y tome la opción predeterminada.
  4. Elija los módulos que necesita en la columna Package Product (Producto de paquete ).

Ahora que ha integrado los marcos de trabajo en la aplicación, es el momento de iniciar el SDK y usar los servicios de App Center.

Nota

Si va a integrar App Center a través de SwiftPM y quiere usarlo también en el destino de la extensión de la aplicación, asegúrese de proporcionar DISABLE_DIAMOND_PROBLEM_DIAGNOSTIC=YES en la configuración. Esto es necesario para evitar limitaciones de SwiftPM al vincular un módulo a varios destinos.

3.4 Integración mediante la copia de los archivos binarios en el proyecto

A continuación se muestran los pasos para integrar los archivos binarios compilados en el proyecto de Xcode para configurar Bloqueos de App Center para la extensión de la aplicación.

Nota

El SDK de App Center admite el uso de XCframework. Si desea integrar XCframeworks en el proyecto, descargue el AppCenter-SDK-Apple-XCFramework.zip de la página de versiones y descomprímalo . El contenido de la carpeta resultante no es específico de la plataforma, sino que contiene XCframeworks para cada módulo. Se pueden integrar de la misma manera que los marcos habituales, como se describe a continuación.

  1. Descargue los marcos del SDK de App Center proporcionados como un archivo ZIP.

  2. Descomprima el archivo y verá una carpeta denominada AppCenter-SDK-Apple que contiene diferentes marcos para cada servicio de App Center en cada carpeta de la plataforma. El marco llamado AppCenter es necesario en el proyecto, ya que contiene código que se comparte entre los distintos módulos.

  3. [Opcional] Cree un subdirectorio para bibliotecas de terceros.

    • Como procedimiento recomendado, las bibliotecas de terceros suelen estar en un subdirectorio, a menudo denominada Vendor. Si el proyecto no está organizado con un subdirectorio para bibliotecas, cree un subdirectorio Vendor ahora.
    • Cree un grupo llamado Vendor dentro del proyecto de Xcode para imitar la estructura de archivos en el disco.
  4. Abra la carpeta AppCenter-SDK-Apple descomprimida en Finder y copie la carpeta en la carpeta del proyecto en la ubicación donde quiera. La carpeta contiene marcos en subcarpetas para otras plataformas compatibles con el SDK de App Center, por lo que es posible que tenga que eliminar subcarpetas que no necesite.

  5. Agregue los marcos de SDK al proyecto en Xcode:

    • Asegúrese de que project Navigator está visible (⌘+1).
    • Ahora arrastre y coloque AppCenter.framework y AppCenterCrashes.framework desde el Finder (en la ubicación del paso anterior) en Project Navigator de Xcode. El archivo AppCenter.framework es necesario para iniciar el SDK. Si no se agrega al proyecto, los demás módulos no funcionarán y la extensión de la aplicación no se compilará.
    • Aparecerá un cuadro de diálogo y asegúrese de que el destino de la extensión de la aplicación esté activado. Haga clic en Finalizar.

Ahora que ha integrado los marcos en la extensión de la aplicación, es el momento de iniciar el SDK y usar los servicios de App Center.

4. Iniciar el SDK

Para usar App Center, debe participar en los módulos que se van a usar. De forma predeterminada, no se inicia ningún módulo y debe llamar explícitamente a cada uno de ellos al iniciar el SDK.

4.1 Adición de las instrucciones import

Inserte las líneas siguientes en el archivo que contiene el punto de entrada de la extensión de la aplicación. Por ejemplo, dentro del archivo ViewController principal de una extensión Today.

@import AppCenter;
@import AppCenterCrashes;
import AppCenter
import AppCenterCrashes

4.2 Agregar el start:withServices: método

Inserte la línea siguiente en el punto de entrada de la extensión de la aplicación. Por ejemplo, dentro del viewDidLoad método del archivo ViewController principal de una extensión Today.

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Crashes.self])

Actualmente, solo se admiten informes de bloqueos para las extensiones de aplicación.

4.3 Reemplace el marcador de posición por el secreto de la aplicación

Asegúrese de reemplazar {Your App Secret} texto por el valor real de la extensión de aplicación. El secreto de aplicación se puede encontrar en la página Introducción o en la página Configuración del portal de App Center.

La página Introducción contiene el ejemplo de código anterior con el secreto de aplicación en ella, puede copiar y pegar todo el ejemplo.

Genial, todo está configurado para visualizar los datos de bloqueos en el portal que el SDK recopila automáticamente.

Consulte la documentación de Bloqueos de App Center para obtener información sobre cómo personalizar la extensión de la aplicación y usar funcionalidades más avanzadas.