Descripción de las configuraciones de compilaciónUnderstanding build configurations

Configuraciones de compilación del proyectoProject build configurations

Los proyectos suelen tener varias configuraciones; cambiar entre ellas permite diferentes salidas en tiempo de compilación.Projects tend to have multiple configurations and switching between them allows for different outputs at build time. Por ejemplo, una configuración de depuración tendrá como resultado símbolos de depuración, lo que permite al depurador resolver nombres de función, parámetros o variables del seguimiento de la pila de una aplicación bloqueada.For example, a Debug configuration will output debugging symbols, allowing the debugger to resolve function names, parameters, or variables from a crashed application's stack trace. Aunque esta información adicional es útil durante el desarrollo, conduce a un tamaño de archivo excesivo y no es ideal para la distribución.While this additional information is useful during development, it leads to an inflated file size and isn't ideal for distribution.

Cada plataforma tiene configuraciones específicas para su compilación.Each platform has specific configurations for its build.

Configuraciones de soluciónSolution configurations

Del mismo modo que las configuraciones de proyecto, las configuraciones de solución se usan para crear configuraciones personalizadas para un proyecto completo.Akin to project configurations, solution configurations are used to create custom configurations for an entire project. Con la pestaña Asignaciones de configuración del elemento Compilar > Configuraciones, puede asignar una configuración de destino para cada elemento de la solución, como se muestra en la imagen siguiente:By using the Configuration Mappings tab under the Build > Configurations item, you can assign a target configuration for each solution item, as illustrated in the following image:

Opciones de asignación de configuración

Para obtener más información sobre configuraciones, vea el vídeo Configuration Manager (Administrador de configuración) de James Montemagno.For more information about configurations, see the Configuration Manager video by James Montemagno.

Configuración de ejecuciónRun configuration

En versiones anteriores de Xamarin Studio se podía seleccionar la opción para establecer un proyecto como proyecto de inicio, que es el que se ejecuta o depura al usar el comando Ejecutar o Depurar global.In previous versions of Xamarin Studio, you could select the option to set a project as a Startup Project, which is the project that is run/debugged when using the global run/debug command. Esto se indicaba mediante un tipo de letra negrita para el nombre del proyecto en el panel de este.This was indicated by a bold typeface for the project's name in the project pad.

En Visual Studio para Mac, en lugar de establecer un proyecto de inicio, se puede establecer una configuración de ejecución.In Visual Studio for Mac, instead of setting a startup project, you can set a run configuration. Las configuraciones de ejecución se presentan en una lista desplegable de la barra de herramientas, junto al selector de la configuración de compilación, como se muestra a continuación:The run configurations are presented in a drop-down list in the toolbar, next to the build configuration selector as illustrated below:

Desplegable de configuración de ejecución

Una configuración de ejecución es un conjunto de opciones de ejecución con un nombre y varias configuraciones que se definen en un proyecto para diferentes fines.A run configuration is a set of execution options with a name and several configurations that are defined in a project for different purposes. Las configuraciones de ejecución se definen en el nivel de proyecto, y para cada proyecto ejecutable se crea automáticamente una predeterminada, aunque es posible agregar tantas como sea necesario.Run configurations are defined at the project level, and a default will be created automatically for each executable project, although it is possible to add as many as needed. Determinados tipos de proyecto generan automáticamente configuraciones de ejecución adicionales.Certain project types automatically generate additional run configurations. Por ejemplo, los proyectos de watchOS pueden generar configuraciones de vista rápida y notificación.For example, watchOS projects may generate Glance and Notification configurations.

Las configuraciones se pueden compartir con otros desarrolladores (en cuyo caso se almacenarán en el archivo .csproj) o conservarse localmente (en cuyo caso se almacenarán en un archivo .user).Configurations can be shared with other developers (in which case the configurations will be stored in the .csproj file) or kept locally (in which case they will be stored in a .user file).

Configuraciones de ejecución de AndroidAndroid run configurations

Las configuraciones de ejecución para proyectos de Android permiten especificar qué actividad, servicio o receptor de difusión iniciar al ejecutar o depurar el proyecto.Run configurations for Android projects allow you to specify which activity, service, or broadcast receiver to launch when running or debugging the project. Puede pasar datos adicionales de intención y establecer marcas de intención para poder probar los componentes con diferentes condiciones de inicio.You can pass intent extra data and set intent flags to be able to test your components under different launch conditions.

Aquellas actividades distintas a MainLauncher deberán tener Exported=true agregado al atributo Actividad para la depuración en un dispositivo físico o tener filtros de intención definidos.Activities other than the MainLauncher will need to have Exported=true added to the Activity attribute for debugging on a physical device, or have Intent filters defined.

Ejemplos de datos que se podrían incluir en configuraciones de ejecuciónExamples of data that might be included in run configurations

En la siguiente lista se proporcionan algunos ejemplos de datos que se podrían incluir en configuraciones de ejecución:The following list provides some examples of data that could be included in run configurations:

  • Proyecto de .NET normalRegular .NET project
    • Aplicación de inicio alternativaAlternative startup app
    • Argumentos de inicioStart arguments
    • Directorio de trabajoWorking directory
    • Variables de entornoEnvironment variables
    • Opciones del entorno de ejecución Mono (para usarse solo al ejecutar en Mono)Mono runtime options (to be used only when running on Mono)
  • Proyecto de AndroidAndroid project
    • Punto de entrada (actividad, servicio, receptor)Entry point (activity, service, receiver)
    • Datos y argumentos de intenciónIntent arguments and data
  • Proyecto de iOSiOS project
    • Modo (Normal, Recuperación de cambios)Mode (Normal, Background Fetch)
  • Proyecto de extensión de iOSiOS extension project
    • Aplicación de inicio: predeterminada o personalizadaStartup app: default or custom
  • Proyecto de WatchKitWatchKit project
    • Modo (Vista rápida, Notificación)Mode (Glance, Notification)
    • Carga de notificacionesNotification payload