Compartir a través de


Introducción a Android

Importante

Visual Studio App Center se retiró el 31 de marzo de 2025, excepto las características de análisis y diagnóstico, que seguirán siendo compatibles hasta el 30 de junio de 2026. Más información.

El SDK de App Center usa una arquitectura modular para que pueda usar cualquiera o todos los servicios.

Puede encontrar información sobre los datos recopilados por App Center sobre los datos recopilados por los SDK de App Center, el Reglamento general de protección de datos y las páginas de preguntas más frecuentes .

Vamos a empezar a configurar App Center Android SDK en la aplicación para usar App Center Analytics y App Center Crashes. Para agregar App Center Distribute a la aplicación, consulte la documentación de App Center Distribute.

1. Prerrequisitos

Asegúrese de que se cumplen los siguientes requisitos previos antes de empezar:

  • El proyecto de Android está configurado en Android Studio.
  • Tiene como destino dispositivos que ejecutan Android versión 5.0 (nivel de API 21) o posterior.

2. Creación de la aplicación en el Portal de App Center para obtener el secreto de aplicación

Si ya ha creado la aplicación en el portal de App Center, puede omitir este paso.

  1. Diríjase a appcenter.ms.
  2. Regístrese o inicie sesión y haga clic en el botón Agregar nuevo en la esquina superior derecha de la página y seleccione Agregar nueva aplicación en el menú desplegable.
  3. Escriba un nombre y una descripción opcional para la aplicación.
  4. Seleccione Android como sistema operativo y Java como plataforma.
  5. Haga clic en el botón Agregar nueva aplicación .

Una vez que haya creado una aplicación, puede obtener su secreto de aplicación en la página Introducción en 2. Inicie el SDK. O bien, puede hacer clic en Configuración y, en la esquina superior derecha, haga clic en los puntos verticales triples y seleccione Copiar secreto de aplicación para obtener el secreto de la aplicación.

3. Agregar los módulos del SDK de App Center

  1. Abra el archivo build.gradle a nivel de aplicación del proyecto (app/build.gradle) y agregue las líneas siguientes después de apply plugin. Incluya las dependencias que desee en el proyecto. Cada módulo del SDK debe agregarse como una dependencia independiente en esta sección. Si desea usar Análisis y Errores de App Center, agregue las siguientes líneas:
dependencies {
    def appCenterSdkVersion = '5.0.6'
    implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
    implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
}

Nota:

Si la versión de tu complemento de Android Gradle es inferior a 3.0.0, debes reemplazar la palabra implementation por compile.

Nota:

Debido a la finalización del soporte de jCenter, todos nuestros ensambles se movieron al repositorio de Maven Central. Siga esta guía sobre la migración de jCenter a Maven Central. Tenga en cuenta que Maven Central no contiene módulos en desuso. Asegúrese de que el proyecto no tiene dependencias de módulos del SDK de App Center en desuso.

  1. Asegúrese de desencadenar una sincronización de Gradle en Android Studio.

Ahora que ha integrado el SDK en la aplicación, es el momento de iniciar el SDK y usar App Center.

4. Iniciar el SDK

4.1 Agregar el método start()

Para usar App Center, debe participar en los módulos que desea usar. De forma predeterminada, no se inicia ningún módulo y debe llamar explícitamente a cada uno de ellos al iniciar el SDK.
Inserte la siguiente línea dentro del onCreate-callback de la clase de actividad principal de tu aplicación para usar App Center Analytics y Fallos de App Center:

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

Advertencia

No se recomienda insertar el secreto de aplicación en el código fuente.

Si necesita iniciar los servicios de App Center por separado, debe hacer lo siguiente:

  1. Configúrelo o inícielo con la Clave Secreta de la Aplicación.
  2. Si el código se puede llamar varias veces, comprueba si App Center ya está configurado.
  3. Inicie los servicios necesarios sin el secreto de la aplicación.
AppCenter.configure(application, "{Your App Secret}");
if (AppCenter.isConfigured()) {
    AppCenter.start(Analytics.class);
    AppCenter.start(Crashes.class);
}
AppCenter.configure(application, "{Your App Secret}");
if (AppCenter.isConfigured()) {
    AppCenter.start(Analytics::class.java);
    AppCenter.start(Crashes::class.java);
}

Si tiene más de un punto de entrada a su aplicación (por ejemplo, una actividad de enlace profundo, un servicio o un receptor de difusión), llame a start en la clase personalizada de la aplicación o en cada punto de entrada. En este último caso, compruebe si App Center ya está configurado antes de la start llamada:

if (!AppCenter.isConfigured())) {
  AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class);
}
if (!AppCenter.isConfigured()) {
  AppCenter.start(application, "{Your App Secret}", Analytics::class.java, Crashes::class.java)
}

4.2 Reemplace el marcador de posición por el secreto de la aplicación

Asegúrese de reemplazar el texto {Your App Secret} por el valor real para su aplicación. El secreto de la aplicación se puede encontrar en la página Introducción o en la página Configuración del portal de App Center.

La página Introducción contiene el ejemplo de código anterior con el secreto de aplicación en ella, solo puede copiar y pegar todo el ejemplo.

En el ejemplo anterior se muestra cómo usar el método start() e incluir tanto App Center Analytics como App Center Crashes.

Si no desea usar uno de los dos servicios, quite el parámetro correspondiente de la llamada al método anterior.

A menos que especifique explícitamente cada módulo como parámetros en el método start, no puede usar ese servicio de App Center. Además, la start() API solo se puede usar una vez en el ciclo de vida de la aplicación: todas las demás llamadas registrarán una advertencia en la consola y solo estarán disponibles los módulos incluidos en la primera llamada.

Por ejemplo: si solo desea incorporar a App Center Analytics, debe modificar la llamada API de la start() siguiente manera:

AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class);
AppCenter.start(application, "{Your App Secret}", Analytics::class.java)

Android Studio sugiere automáticamente las instrucciones de importación necesarias una vez insertado el start() método, pero si ve un error que indica que los nombres de clase no se reconocen, agregue las siguientes líneas a las instrucciones import de la clase de actividad:

import com.microsoft.appcenter.AppCenter;
import com.microsoft.appcenter.analytics.Analytics;
import com.microsoft.appcenter.crashes.Crashes;
import com.microsoft.appcenter.AppCenter
import com.microsoft.appcenter.analytics.Analytics
import com.microsoft.appcenter.crashes.Crashes

Ya puedes visualizar los datos de Análisis y Errores en el portal que el SDK recopila automáticamente.

Consulte la documentación de App Center Analytics y App Center Crashes para obtener información sobre cómo personalizar y usar funcionalidades más avanzadas de 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 regla de copia de seguridad, cambie al tercer paso.

Si usa la copia de seguridad automática para evitar obtener información incorrecta sobre los dispositivos, siga los pasos siguientes:

5.1. Para Android 11 (nivel de API 30) o inferior.

  1. Cree el appcenter_backup_rule.xml archivo en la carpeta res/xml.
  1. Abra el archivo AndroidManifest.xml del proyecto. Agregue el android:fullBackupContent atributo al <application> elemento . Debe apuntar al archivo de recursos appcenter_backup_rule.xml.
android:fullBackupContent="@xml/appcenter_backup_rule"
  1. 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.

  1. Cree el appcenter_backup_rule.xml archivo en la carpeta res/xml.
  1. Abra el archivo AndroidManifest.xml del proyecto. Agregue el android:dataExtractionRules atributo al <application> elemento . Debe apuntar al archivo de recursos appcenter_backup_rule.xml.
android:dataExtractionRules="@xml/appcenter_backup_rule"
  1. 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>