Compartir a través de


Otras API de 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.

Ajuste del nivel de registro

Puede controlar el número de mensajes de registro que se muestran desde App Center en la consola. Use - LogLevelAPI para habilitar el registro adicional durante la depuración. De forma predeterminada, se establece en ASSERT para los entornos de App Store y WARN de lo contrario.

Para tener tantos mensajes de registro como sea posible, habilite LogLevel.Verbose en la configuración de App Center o en el código.

AppCenter.LogLevel = LogLevel.Verbose;

Identificación de instalaciones

El SDK de App Center crea un UUID para cada dispositivo una vez instalada la aplicación. Este identificador sigue siendo el mismo para un dispositivo cuando se actualiza la aplicación. Solo se genera un nuevo identificador cuando se vuelve a instalar la aplicación. La SIGUIENTE API es útil para fines de depuración.

System.Guid? installId = await AppCenter.GetInstallIdAsync();

Identificación de usuarios

El SDK de App Center admite la configuración de un identificador de usuario que se usa para aumentar los informes de bloqueos. Para usar esta funcionalidad:

  1. Configure el SDK de App Center como se describe en la guía de introducción del SDK de App Center.
  2. Establezca un userID elemento en el SDK con el código siguiente:
AppCenter.SetUserId("your-user-id");

Después de establecer un identificador de usuario, puede usar la característica de búsqueda de App Center para buscar informes de bloqueo específicos para el identificador. Obtenga más información en la documentación de búsqueda de App Center.

Nota

El valor del identificador de usuario está limitado a 256 caracteres. Se mostrará con los informes de bloqueo, pero no se usará para la agregación o los recuentos de usuarios afectados. En caso de establecer el identificador de usuario varias veces, solo se usará el último identificador de usuario. Debe establecer el identificador de usuario usted mismo antes de que se inicie cada aplicación, ya que el SDK no almacena este valor entre inicios.

Deshabilitar todos los servicios en tiempo de ejecución

Si desea deshabilitar todos los servicios de App Center a la vez, use la Enabled propiedad . Cuando se deshabilita, el SDK no reenvía ninguna información a App Center.

AppCenter.SetEnabledAsync(false);

Para habilitar todos los servicios de una vez más, use la misma API, pero pase true como parámetro.

AppCenter.SetEnabledAsync(true);

No es necesario esperar esta llamada para que otras llamadas API (como IsEnabledAsync) sean coherentes.

El estado se conserva en el almacenamiento del dispositivo en los inicios de la aplicación.

Cambio del estado del servicio en tiempo de ejecución

Puede habilitar o deshabilitar el servicio en tiempo de ejecución con el código siguiente:

Analytics.SetEnabledAsync(true);

No permitir solicitudes de red

En el SDK de App Center, las solicitudes de red se permiten de forma predeterminada. Si desea enviar datos que el SDK de App Center recopila por el usuario, puede impedir el envío automático de datos.

AppCenter.IsNetworkRequestsAllowed = false;

En este caso, el SDK de App Center continúa recopilando datos, pero solo se enviará cuando se permitan las solicitudes de red.

AppCenter.IsNetworkRequestsAllowed = true;

Nota

Este valor se conserva entre los inicios.

En cualquier momento, puede comprobar si se permiten o no el envío de datos en el SDK de App Center.

AppCenter.IsNetworkRequestsAllowed;

Nota

El valor guardado anteriormente en SharedPreferences se omite hasta AppCenter que se inicia en la plataforma Android. Devolverá el último valor establecido con AppCenter.IsNetworkRequestsAllowed = allowed o true si el valor no se cambió antes de que Se inicie AppCenter.

Comprobación de si App Center está habilitado

También puede comprobar si App Center está habilitado o no.

bool enabled = await AppCenter.IsEnabledAsync();

Comprobación de la versión del SDK de App Center en tiempo de ejecución

Puede obtener la versión del SDK de App Center que está usando actualmente.

AppCenter.SdkVersion;

Retrasar el inicio de App Center

Puede haber casos en los que quiera retrasar el inicio de App Center hasta después de que se inicie AppCenterBehavior . Por ejemplo, si desea solicitar el consentimiento del usuario antes de iniciar cualquier servicio de App Center.
Para ello, agregue AppCenterBehaviorAdvanced al objeto de juego y active las casillas Iniciar el SDK nativo desde la aplicación iOS/Android . Esto inicia el SDK en el Start método de AppCenterBehavior y le permite agregar un cuadro de diálogo personalizado u otra lógica.

Sugerencia

Si genera la configuración en tiempo de compilación, otra manera es ir a Configuración> del reproductorOtras configuraciones>Scripting Definir símbolos y pegar APPCENTER_DONT_USE_NATIVE_STARTER.

API asincrónicas en el SDK de Unity

Las API asincrónicas devuelven un AppCenterTask objeto en lugar de devolver el resultado directamente y se devuelven inmediatamente en lugar de esperar a que finalice la acción.

Hay tres maneras de interactuar con estos métodos.

Método 1: ContinueWith

Para realizar una acción una vez completada la AppCenterTaskactividad de , agregue una devolución de llamada mediante el ContinueWith método .

Ejemplo:

AppCenter.IsEnabledAsync().ContinueWith(task =>
{
    // Do something with task.Result
});

En situaciones en las que el método tiene un valor devuelto real, devolverá AppCenterTask<{Return Type}> (como en el ejemplo anterior). En estas situaciones, el parámetro de tarea de la devolución de llamada tendrá una Result propiedad a la que puede acceder.

Método 2: Características de lenguaje integradas

Si está escribiendo código que tiene acceso a .NET 4.6 o superior, AppCenterTask se awaitpuede escribir en un contexto asincrónico.

Ejemplo:

bool isEnabled = await AppCenter.IsEnabledAsync();

Método 3: Corrutinas

AppCenterTasktambién son adecuados para su uso en corrutinas.

Ejemplo:

void SomeMethod()
{
    StartCoroutine(IsEnabledCoroutine());
}

IEnumerator IsEnabledCoroutine()
{
    var isEnabled = AppCenter.IsEnabledAsync();
    yield return isEnabled;

    // do something with the isEnabled
}