Introduzione ad Android

Importante

Visual Studio App Center è pianificato per il ritiro il 31 marzo 2025. Anche se è possibile continuare a usare Visual Studio App Center fino a quando non viene completamente ritirato, esistono diverse alternative consigliate a cui è possibile prendere in considerazione la migrazione.

Altre informazioni sulle sequenze temporali di supporto e sulle alternative.

App Center SDK usa un'architettura modulare per poter usare qualsiasi o tutti i servizi.

È possibile trovare informazioni sui dati raccolti da App Center sui dati raccolti dagli SDK di App Center, regolamento generale sulla protezione dei dati e pagine delle domande frequenti .

Iniziamo a configurare App Center Android SDK nell'app per usare App Center Analytics e Gli arresti anomali di App Center. Per aggiungere App Center Distribute all'app, vedere la documentazione relativa a App Center Distribute.

1. Prerequisiti

Prima di iniziare, verificare che i prerequisiti seguenti siano soddisfatti:

  • Il progetto Android è configurato in Android Studio.
  • I dispositivi che eseguono Android versione 5.0 (livello API 21) o versione successiva sono destinati ai dispositivi.

2. Creare l'app nel portale di App Center per ottenere il segreto dell'app

Se l'app è già stata creata nel portale di App Center, è possibile ignorare questo passaggio.

  1. Vai a appcenter.ms.
  2. Iscriversi o accedere e fare clic sul pulsante Aggiungi nuovo nell'angolo superiore destro della pagina e selezionare Aggiungi nuova app dal menu a discesa.
  3. Immettere un nome e una descrizione facoltativa per l'app.
  4. Selezionare Android come sistema operativo e Java come piattaforma.
  5. Fare clic sul pulsante Aggiungi nuova app .

Dopo aver creato un'app, è possibile ottenere il segreto dell'app nella pagina Introduzione in 2. Avviare l'SDK. In alternativa, è possibile fare clic su Impostazioni e nell'angolo superiore destro fare clic sui tre punti verticali e selezionare Copia segreto dell'app per ottenere il segreto dell'app .

3. Aggiungere i moduli di App Center SDK

  1. Aprire il file build.gradle a livello di app del progetto (app/build.gradle) e aggiungere le righe seguenti dopo apply plugin. Includere le dipendenze desiderate nel progetto. Ogni modulo SDK deve essere aggiunto come dipendenza separata in questa sezione. Per usare App Center Analytics e arresti anomali, aggiungere le righe seguenti:
dependencies {
    def appCenterSdkVersion = '5.0.4'
    implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
    implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
}

Nota

Se la versione del plug-in Android Gradle è inferiore alla 3.0.0, è necessario sostituire l'implementazione della parola per compilazione.

Nota

A causa della chiusura del supporto di jCenter , tutti gli assembly sono stati spostati nel repository Maven Central. Seguire questa guida sulla migrazione da jCenter a Maven Central. Si noti che Maven Central non contiene moduli deprecati. Assicurarsi che il progetto non abbia dipendenze di moduli di App Center SDK deprecati.

  1. Assicurarsi di attivare una sincronizzazione Gradle in Android Studio.

Dopo aver integrato l'SDK nell'applicazione, è possibile avviare l'SDK e usare App Center.

4. Avviare l'SDK

4.1 Aggiungere il metodo start()

Per usare App Center, è necessario acconsentire esplicitamente ai moduli da usare. Per impostazione predefinita, non vengono avviati moduli ed è necessario chiamarli in modo esplicito all'avvio dell'SDK.
Inserire la riga seguente all'interno della classe di attività principale dell'app: onCreatecallback per usare App Center Analytics e App Center Arresti anomali:

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

Avviso

Non è consigliabile incorporare il segreto dell'app nel codice sorgente.

Se è necessario avviare separatamente i servizi di App Center, è necessario:

  1. Configurarlo o avviarlo con il segreto dell'app.
  2. Se il codice può essere chiamato più volte, controllare se App Center è già configurato.
  3. Avviare i servizi necessari senza il segreto dell'app.
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);
}

Se si dispone di più di un punto di ingresso all'applicazione (ad esempio, un'attività di collegamento diretto, un servizio o un ricevitore broadcast), chiamare start nella classe personalizzata dell'applicazione o in ogni punto di ingresso. In quest'ultimo caso, controllare se App Center è già configurato prima della start chiamata:

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 Sostituire il segnaposto con il segreto dell'app

Assicurarsi di sostituire {Your App Secret} il testo con il valore effettivo per l'applicazione. Il segreto dell'app è disponibile nella pagina Introduzione o nella pagina Impostazioni del portale di App Center.

La pagina Introduzione contiene l'esempio di codice precedente con il segreto dell'app, è sufficiente copiare e incollare l'intero esempio.

L'esempio precedente illustra come usare il start() metodo e includere sia App Center Analytics che App Center Crashes.

Se non si vuole usare uno dei due servizi, rimuovere il parametro corrispondente dalla chiamata al metodo precedente.

A meno che non si specifichi in modo esplicito ogni modulo come parametri nel metodo start, non è possibile usare tale servizio App Center. Inoltre, l'API start() può essere usata una sola volta nel ciclo di vita dell'app. Tutte le altre chiamate segnaleranno un avviso alla console e saranno disponibili solo i moduli inclusi nella prima chiamata.

Ad esempio, se si vuole semplicemente eseguire l'onboarding in App Center Analytics, è necessario modificare la start() chiamata API come indicato di seguito:

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

Android Studio suggerisce automaticamente le istruzioni di importazione necessarie dopo aver inserito il start() metodo , ma se viene visualizzato un errore che indica che i nomi delle classi non vengono riconosciuti, aggiungere le righe seguenti alle istruzioni import nella classe di attività:

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

Tutti sono impostati per visualizzare i dati di Analisi e arresti anomali nel portale che l'SDK raccoglie automaticamente.

Per informazioni su come personalizzare e usare funzionalità più avanzate di entrambi i servizi, vedere la documentazione relativa ad App Center Analytics e App Center Crashes .

Per informazioni su come iniziare a usare gli aggiornamenti in-app, leggere la documentazione di App Center Distribute.

5. Regole di backup (solo Android)

Nota

Le app destinate ad Android 6.0 (livello API 23) o versioni successive hanno l'abilitazione automatica del backup automatico. 

Nota

Se si dispone già di un file personalizzato con una regola di backup, passare al terzo passaggio.

Se si usa il backup automatico per evitare di ottenere informazioni errate sui dispositivi, seguire questa procedura:

5.1. Per Android 11 (livello API 30) o inferiore.

  1. Creare appcenter_backup_rule.xml file nella cartella res/xml .
  1. Aprire il file diAndroidManifest.xml del progetto. Aggiungere l'attributo android:fullBackupContent all'elemento <application> . Deve puntare al file di risorse appcenter_backup_rule.xml .
android:fullBackupContent="@xml/appcenter_backup_rule"
  1. Aggiungere le regole di backup seguenti al file 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. Per Android 12 (livello API 31) o versione successiva.

  1. Creare appcenter_backup_rule.xml file nella cartella res/xml .
  1. Aprire il file diAndroidManifest.xml del progetto. Aggiungere l'attributo android:dataExtractionRules all'elemento <application> . Deve puntare al file di risorse appcenter_backup_rule.xml .
android:dataExtractionRules="@xml/appcenter_backup_rule"
  1. Aggiungere le regole di backup seguenti al file 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>