Migración desde HockeySDK a App Center Android SDK

Importante

Visual Studio App Center está programado para retirarse 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 y las alternativas de soporte técnico.

Siga esta documentación si desea actualizar la aplicación para usar el SDK de App Center en lugar de HockeySDK.

1. Actualizar las bibliotecas

Abra el archivo build.gradle de nivel de aplicación del proyecto (app/build.gradle) y reemplace la línea siguiente en la dependencies { ... } configuración.

Antes:

implementation 'net.hockeyapp.android:HockeySDK:...'

Después:

def appCenterSdkVersion = '5.0.4'
implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-distribute:${appCenterSdkVersion}"

El SDK de App Center está diseñado con un enfoque modular: solo puede integrar los servicios que le interesan. Cada módulo del SDK debe agregarse como una dependencia independiente en esta sección. Consulte las equivalencias en la tabla siguiente:

HockeyApp (clase) Módulo de App Center
MetricsManager Analytics
CrashManager Crashes
UpdateManager Distribute

2. Actualización del código de instalación del SDK

2.1 Convertir el identificador de la aplicación

El SDK de App Center usa identificadores de aplicación en el formato de identificador único global (GUID). App Id. de HockeyApp se puede usar en App Center, pero debe convertirlo a un formato diferente. Para convertir el identificador, debe agregar cuatro guiones para obtener una representación 8-4-4-4-12.

Antes (HockeyApp): 00112233445566778899aabbccddeeff

Después (App Center): 00112233-4455-6677-8899-aabbccddeeff

2.2 Reemplazar la inicialización del SDK en el código de la aplicación

  1. Reemplace las siguientes importaciones en la clase de actividad.

    Antes:

    import net.hockeyapp.android.CrashManager;
    import net.hockeyapp.android.metrics.MetricsManager;
    import net.hockeyapp.android.UpdateManager;
    

    Después:

    import com.microsoft.appcenter.AppCenter;
    import com.microsoft.appcenter.analytics.Analytics;
    import com.microsoft.appcenter.crashes.Crashes;
    import com.microsoft.appcenter.distribute.Distribute;
    
  2. Reemplace el código de registro en la devolución de llamada -callback de la clase onCreatede actividad principal de la aplicación.

    Antes:

    CrashManager.register(this);
    MetricsManager.register(getApplication());
    UpdateManager.register(this);
    

    Después:

    AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class, Distribute.class);
    

    Si usó metadatos para proporcionar el identificador de la aplicación, debe copiarlo desde allí al código de inicialización y quitarlo.

    <meta-data android:name="net.hockeyapp.android.appIdentifier" android:value="..." />
    

    desde su archivo AndroidManifest.xml .

  3. Reemplace las llamadas API de HockeyApp en toda la aplicación. A continuación se indican las tablas de asignación de API detalladas.

3. Comparación de servicios y características

Core

Característica HockeyApp App Center
Ajuste del nivel de registro HockeyLog.setLogLevel AppCenter.setLogLevel
Identificación de las instalaciones Solo para uso interno AppCenter.getInstallId
Identificación de usuarios Solo bloqueos AppCenter.setUserId

Análisis

Característica HockeyApp App Center
Realizar un seguimiento automático de las sesiones Sí, se puede deshabilitar mediante MetricsManager.setSessionTrackingDisabled Documentación (no se puede deshabilitar)
Eventos personalizados con propiedades MetricsManager.trackEvent Analytics.trackEvent
Deshabilitación del servicio en tiempo de ejecución MetricsManager.disableUserMetrics y MetricsManager.enableUserMetrics Analytics.setEnabled

Bloqueos

Característica HockeyApp App Center
Envío automático de bloqueos Deshabilitado de forma predeterminada Documentación (habilitada de forma predeterminada)
Adjuntar metadatos adicionales Documentación (se puede adjuntar desde el agente de escucha)
Cuadro de diálogo Personalizar usuario Documentación (no proporcionada de forma predeterminada)
Obtener información sobre el estado de envío Documentación
Información sobre un bloqueo anterior CrashManager.getLastCrashDetails Crashes.getLastSessionCrashReport

Distribución

Nota

A diferencia de HockeyApp, la característica actualizaciones desde la aplicación de App Center solo funciona con compilaciones RELEASE (de forma predeterminada) que se distribuyen mediante el servicio App Center Distribute . Si la aplicación usa un grupo de distribución privado, una vez instalada y abierta la aplicación por primera vez después de agregar el SDK de Distribución de App Center, se abrirá un explorador para autenticar al usuario y habilitar las actualizaciones desde la aplicación. Este explorador también se abrirá si establece la pista de actualización privada en la aplicación en tiempo de ejecución. Se trata de un paso único que no se producirá para las versiones posteriores de la aplicación. Consulte la documentación de Distribución de App Center para obtener más detalles.

Característica HockeyApp App Center
Actualizaciones restringidas en la aplicación LoginManager.verifyLogin Distribute.setUpdateTrack
Deshabilitación del servicio en tiempo de ejecución UpdateManager.unregister Distribute.setEnabled
Personalización del cuadro de diálogo de actualización Documentación

Servicio de comentarios

El servicio de comentarios no se admitirá en App Center. Consulte los comentarios de HockeyApp.