Introducción a Unity
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.
El SDK de App Center usa una arquitectura modular para que pueda usar cualquiera o todos los servicios.
Comencemos y configuraremos el SDK de Unity de App Center para usar App Center Analytics y bloqueos. Para agregar App Center Distribute a la aplicación, consulte la documentación de App Center Distribute.
1. Prerrequisitos
Antes de comenzar, asegúrese de que el proyecto está configurado en Unity 2018.1 o posterior.
El SDK de App Center para Unity admite las siguientes plataformas:
- iOS (9.0 o posterior)
- Android (5.0/API 21 o posterior)
- UWP (compilación 16299 o posterior)
Nota
La versión del entorno de ejecución de scripting de .NET 3.5 y el back-end de scripting de .NET ya no se admiten en la plataforma para UWP.
Para aprender a usar corrutinas o devoluciones de llamada en lugar de con .NET 3.5
back-endasync/await
, consulte la sección API asincrónicas del SDK de Unity de la documentación.
Además, el SDK de App Center para Unity solo está disponible en C#.
2. Creación de la aplicación en el Portal de App Center para adquirir el secreto de aplicación
Si ya ha creado la aplicación en el portal de App Center, puede omitir este paso.
- Vaya a appcenter.ms.
- Regístrese o inicie sesión en App Center.
- Haga clic en el botón azul de la esquina superior derecha del portal que dice Agregar nuevo y seleccione Agregar nueva aplicación en el menú desplegable.
- Escriba un nombre y una descripción opcional para la aplicación.
- Seleccione el sistema operativo y la plataforma adecuados en función del proyecto, tal y como se ha descrito anteriormente.
- Haga clic en el botón Agregar nueva aplicación en la parte inferior derecha de la página.
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.
3. Agregar el SDK de App Center al proyecto
3a Instalar la extensión Editor
El SDK de App Center se integra importando paquetes de Unity en el proyecto. Para ello, instale primero el complemento App Center Unity Editor Extensions. Abra las extensiones de Editor a través del menú de Unity: Window > App Center Editor Extensions (Extensiones de App Center > ) y seleccione "Install App Center SDK" (Instalar sdk de App Center).
Nota
En las versiones de Unity 2019.1.2f1 y versiones posteriores, podría haber errores en los registros durante la instalación, como Coroutine continue failure
. Se trata de un problema conocido de Unity y debe omitirlo.
3.1b Instalar paquetes individuales
Como alternativa, cada uno de los paquetes individuales de Unity se puede descargar e importar. Se encuentran en la página de GitHub del SDK de Unity de App Center. Descargue la versión más reciente de los paquetes que desea usar. Su nombre debe tener el formato AppCenter{Analytics/Crashes/Distribute}-v{version}.unitypackage.
3.2b Importar el paquete
Abra el proyecto de Unity y haga doble clic en el paquete que descargó. Debería aparecer una ventana emergente en el proyecto de Unity que contiene una lista de archivos. Seleccione Importar y el SDK se agregará al proyecto. Repita este paso para cada paquete que descargó y planee usarlo en el proyecto.
4. Habilitación del SDK
4.1 Crear un objeto game vacío
App Center funciona como un componente que se adjunta a un objeto de juego en la escena en la que se inicia el juego. Vaya a esta escena y agregue un objeto de juego vacío. Asígnele un nombre descriptivo, como "App Center".
4.2 Adjuntar el script de App Center
En la ventana Proyecto , vaya a la carpeta "AppCenter" que se agregó al proyecto. Busque el script, denominado AppCenterBehavior, y arrástrelo al objeto de juego recién creado en la ventana Jerarquía .
Nota
No es necesario agregar App Center a todas las escenas en las que quiera usarla. Agregarlo a la primera escena cargada es suficiente.
4.3 Configuración de las opciones de App Center
Haga clic en este nuevo objeto "App Center" y agregue los secretos de la aplicación a los campos correspondientes en la ventana Inspector . Asegúrese de activar también las casillas "Usar {servicio}" para cada servicio de App Center que quiera usar.
Advertencia
No se recomienda insertar el secreto de aplicación en el código fuente.
Nota
Si el proyecto no admite una de las tres plataformas enumeradas en la configuración, deje el campo secreto de la aplicación tal cual; no tendrá ningún efecto. Si el proyecto admite plataformas que App Center no admite, las API y la configuración no tendrán ningún efecto para esas plataformas.
Genial, está todo configurado para visualizar los datos de análisis y diagnóstico (bloqueo y error) en el portal que el SDK recopilará automáticamente.
Consulte la documentación de App Center Analytics y Bloqueos de App Center para aprender a usar funcionalidades más avanzadas con ambos servicios.
Para obtener información sobre cómo empezar a trabajar con las actualizaciones desde la aplicación, lea la documentación de App Center Distribute.
5. Reglas de copia de seguridad (solo Android)
Nota
Las aplicaciones destinadas a Android 6.0 (nivel de API 23) o superior tienen habilitada automáticamente la copia de seguridad automática.
Nota
Si ya tiene un archivo personalizado con una regla de copia de seguridad, cambie al tercer paso.
Nota
Si aún no tiene su propio archivo deAndroidManifest.xml , créelo en la carpeta Assets/Plugins/Android . Este manifiesto se combinará con el valor predeterminado creado por Unity en el momento de la compilación.
Si usa la copia de seguridad automática para evitar obtener información incorrecta sobre el dispositivo, siga los pasos siguientes:
5.1. Para Android 11 (nivel de API 30) o inferior.
- Cree appcenter_backup_rule.xml archivo en la carpeta Assets/Plugins/Android/res/xml .
- Abra el archivo AndroidManifest.xml del proyecto. Agregue el
android:fullBackupContent
atributo al<application>
elemento . Debe apuntar al archivo de recursosappcenter_backup_rule.xml .
android:fullBackupContent="@xml/appcenter_backup_rule"
- Agregue las siguientes reglas de copia de seguridad al archivo appcenter_backup_rule.xml :
<full-backup-content xmlns:tools="http://schemas.android.com/tools">
<exclude domain="sharedpref" path="AppCenter.xml"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
<exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
<exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
</full-backup-content>
5.2. Para Android 12 (nivel de API 31) o superior.
- Cree appcenter_backup_rule.xml archivo en la carpeta Assets/Plugins/Android/res/xml .
- Abra el archivo AndroidManifest.xml del proyecto. Agregue el
android:dataExtractionRules
atributo al<application>
elemento . Debe apuntar al archivo de recursosappcenter_backup_rule.xml .
android:dataExtractionRules="@xml/appcenter_backup_rule"
- Agregue las siguientes reglas de copia de seguridad al archivo appcenter_backup_rule.xml :
<data-extraction-rules xmlns:tools="http://schemas.android.com/tools">
<cloud-backup>
<exclude domain="sharedpref" path="AppCenter.xml"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
<exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
<exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
</cloud-backup>
<device-transfer>
<exclude domain="sharedpref" path="AppCenter.xml"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
<exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
<exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
</device-transfer>
</data-extraction-rules>