Creación de aplicaciones Objective-C o Swift para iOS
Para compilar la primera aplicación iOS nativa, debe realizar las siguientes acciones:
- Conéctese a la cuenta de servicio del repositorio (GitHub, Bitbucket, VSTS, Azure DevOps)
- Selección de un repositorio y una rama donde reside la aplicación
- Configurar el proyecto o área de trabajo de la compilación y el esquema que desea compilar
Nota
Para ejecutar la aplicación en un dispositivo real, la compilación debe ser código firmado con un perfil de aprovisionamiento válido y un certificado.
1. Vinculación del repositorio
Si no se ha conectado previamente a la cuenta de servicio del repositorio, debe autorizar la conexión. Una vez conectada la cuenta, seleccione el repositorio donde se encuentra el proyecto de iOS. App Center requiere que la cuenta tenga permisos de administrador y extracción para configurar una compilación para un repositorio.
2. Selección de una rama
Después de seleccionar un repositorio, seleccione la rama que desea compilar. De forma predeterminada, se mostrarán todas las ramas activas.
3. Configuración de la primera compilación
Configure el proyecto de iOS antes de la primera compilación.
3.1 Proyecto/área de trabajo y esquema
Para una configuración de compilación, se requiere un proyecto de Xcode o un área de trabajo de Xcode y un esquema compartido. App Center detecta automáticamente los proyectos, las áreas de trabajo y los esquemas compartidos (siempre que los esquemas estén en la carpeta correcta) de la rama. Seleccione el proyecto o el área de trabajo que desea compilar y el esquema correspondiente.
Si no se encuentra ningún esquema, asegúrese de que el esquema que desea es compartido y que su contenedor es el proyecto o área de trabajo que ha seleccionado. También debe confirmar que esos cambios están registrados en la rama que está configurando.
Tenga en cuenta que no puede exportar un archivo y colocarlo en .xcscheme cualquier parte del proyecto. Debe estar en la xcshareddata/xcschemes/ carpeta . Asegúrese de que esta ruta de acceso no está en el .gitignore archivo.

3.2. Versión de Xcode
Seleccione la versión de Xcode en la que ejecutar la compilación.
3.3. Desencadenadores de compilación
De forma predeterminada, se desencadena una nueva compilación cada vez que un desarrollador inserta en una rama configurada. Este proceso se conoce como "Integración continua". Si prefiere desencadenar una nueva compilación manualmente, puede cambiar esta configuración en la configuración de compilación.
3.4. Incrementar el número de compilación
Cuando se habilita, CFBundleVersion en el de la aplicación se incrementa automáticamente para cada Info.plist compilación. El cambio se produce antes de la compilación y no se confirma en el repositorio.
Nota
Para que el número de compilación de incremento funcione, asigne .plist file el nombre *Info.plist como . Production-Info.plist
3.5. Pruebas
Si el esquema seleccionado tiene una acción de prueba con un destino de prueba seleccionado, puede configurar las pruebas para que se ejecuten como parte de cada compilación. App Center puede ejecutar actualmente pruebas unitarias de XCTest.
3.6. Firma de código
La creación de una aplicación iOS para dispositivos reales requiere firmarla con credenciales válidas. Para iniciar compilaciones en App Center, habilite la firma de código en el panel de configuración y cargue un perfil de aprovisionamiento ( ) y un certificado válido .mobileprovision ( .p12 ), junto con la contraseña del certificado.
La configuración del proyecto de Xcode debe ser compatible con los archivos que va a cargar. Puede leer más sobre la firma de código en la documentación oficial para desarrolladores de Apple.
Las aplicaciones con extensiones de app o watchOS requieren que se firme un perfil de aprovisionamiento adicional por extensión.
3.7. Inicio de la compilación correcta en un dispositivo real
Use el archivo recién generado .ipa para probar si la aplicación se inicia en un dispositivo real. El inicio en un dispositivo real agregará aproximadamente 10 minutos más al tiempo total de compilación. Obtenga más información sobre cómo configurar pruebas de inicio.
3.8. CocoaPods
App Center examina la rama seleccionada y, si encuentra un podfile, realizará automáticamente un paso al principio pod install de cada compilación. Este paso garantizará que todas las dependencias estén instaladas.
Advertencia
Si el repositorio ya contiene una carpeta /Pods, App Center supone que ha registrado los pods en el repositorio y ya no realizará pod install . Si quita o modifica la carpeta /Pods, es posible que tenga que volver a guardar la configuración de compilación manualmente mediante o para que la Save actualización Save and Build suba efecto.
3.9. Distribuir a un grupo de distribución
Puede configurar cada compilación correcta de una rama para distribuirla a un grupo de distribución creado previamente. Puede agregar un nuevo grupo de distribución desde la sección Distribuir. Siempre hay un grupo de distribución predeterminado denominado "Colaboradores" que incluye todos los usuarios que tienen acceso a la aplicación.
Una vez que guarde la configuración, se iniciará automáticamente una nueva compilación.
4. Resultados de la compilación
Una vez desencadenada una compilación, puede encontrarse en los siguientes estados:
- queued: la compilación se pone en cola a la espera de que se liberan los recursos.
- building: la compilación ejecuta las tareas predefinidas.
- succeeded: la compilación se ha completado y se ha realizado correctamente.
- error: la compilación se completó, pero no se pudo realizar. Puede solucionar el problema inspeccionando los registros de compilación.
- cancelado: la compilación se canceló mediante una acción del usuario o se ha quedó el tiempo de espera
4.1. Registros de compilación
Para una compilación completada (correcta o con errores), descargue los registros para obtener más información sobre cómo ha ido la compilación. App Center proporciona un archivo con los siguientes archivos:
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1> (e.g. 2_Get Sources.txt)
|-- <build-step-2> (e.g. 3_Pod install.txt)
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
Los registros específicos del paso de compilación (ubicados en el directorio del archivo) son útiles para solucionar problemas y comprender en qué paso y por qué se ha generado build/ un error en la compilación.
4.2. La aplicación (.ipa)
El .ipa archivo es un archivo de archivo de aplicación de dispositivo iOS que contiene la aplicación de iOS.
- Las compilaciones sin signo no producirán un
.ipaarchivo. El artefacto de una compilación sin signo es el archivo que se puede usar para generar un archivo con el.xcarchiveorganizador de archivos de.ipaXcode. - Si la compilación está firmada correctamente, el archivo se puede instalar en un dispositivo real correspondiente al perfil de aprovisionamiento
.ipausado al firmar. Puede encontrar más detalles sobre la firma y distribución de código App Center en la documentación de firma de código de iOSde App Center de la aplicación . - Si la compilación no se ha firmado, el desarrollador puede firmar el archivo (por ejemplo, localmente mediante codesign) o usarse para otros fines (por ejemplo, cargar en el servicio de pruebas para pruebas de IU en dispositivos reales o ejecutar en el
.ipasimulador).
4.3. El archivo de símbolos (.dsym)
Los .dsym archivos contienen los símbolos de depuración de la aplicación.
- Si anteriormente ha integrado el SDK de App Center en la aplicación con el módulo de informes de bloqueo habilitado, el servicio de informes de bloqueos requiere este archivo para que una compilación muestre informes de bloqueo legibles
.dsym(simbólicos). - Si anteriormente ha integrado otro SDK con fines de informes de bloqueos en la aplicación (por ejemplo, el SDK de HockeyApp), el servicio correspondiente requiere que el archivo muestre los informes de bloqueo legibles
.dsympor el usuario.
Tenga en cuenta que los .dsym archivos no cambian al firmar el código .ipa . Si decide firmar la compilación más adelante, el .dsym generado antes de la firma de código sigue siendo válido.
Versiones y requisitos admitidos
Los detalles de la versión de Xcode de la máquina de compilación se actualizan cada vez que se agrega una nueva versión de Xcode. Estamos atentos a las versiones más recientes publicadas por Apple e incluirlas lo antes posible en las máquinas virtuales que se usan para ejecutar las compilaciones.