Eseguire la migrazione da HockeySDK ad App Center Android SDK
Importante
Visual Studio App Center è previsto 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 che è possibile considerare la migrazione a.
Altre informazioni sulle sequenze temporali di supporto e sulle alternative.
Seguire questa documentazione se si vuole aggiornare l'applicazione per usare App Center SDK anziché HockeySDK.
1. Aggiornare le librerie
Aprire il fileapp/build.gradle
build.gradle a livello di progetto e sostituire la riga seguente nella dependencies { ... }
configurazione.
Prima di:
implementation 'net.hockeyapp.android:HockeySDK:...'
Dopo:
def appCenterSdkVersion = '5.0.6'
implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-distribute:${appCenterSdkVersion}"
App Center SDK è progettato con un approccio modulare: è possibile integrare solo i servizi interessati. Ogni modulo SDK deve essere aggiunto come dipendenza separata in questa sezione. Vedere le equivalenze nella tabella successiva:
Classe HockeyApp | Modulo di App Center |
---|---|
MetricsManager |
Analytics |
CrashManager |
Crashes |
UpdateManager |
Distribute |
2. Aggiornare il codice di installazione dell'SDK
2.1 Convertire l'identificatore dell'applicazione
App Center SDK usa gli identificatori dell'applicazione nel formato GUID (Global Unique Identifier). L'ID app HockeyApp può essere usato da App Center, ma è necessario convertirlo in un formato diverso. Per convertire l'identificatore è necessario aggiungere quattro trattini per ottenere una rappresentazione 8-4-4-4-12.
Prima (HockeyApp): 00112233445566778899aabbccddeeff
Dopo (App Center): 00112233-4455-6677-8899-aabbccddeeff
2.2 Sostituire l'inizializzazione SDK nel codice dell'applicazione
Sostituire le importazioni seguenti nella classe di attività.
Prima di:
import net.hockeyapp.android.CrashManager; import net.hockeyapp.android.metrics.MetricsManager; import net.hockeyapp.android.UpdateManager;
Dopo:
import com.microsoft.appcenter.AppCenter; import com.microsoft.appcenter.analytics.Analytics; import com.microsoft.appcenter.crashes.Crashes; import com.microsoft.appcenter.distribute.Distribute;
Sostituire il codice di registrazione all'interno della classe di attività principale dell'app'
onCreate
-callback.Prima di:
CrashManager.register(this); MetricsManager.register(getApplication()); UpdateManager.register(this);
Dopo:
AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class, Distribute.class);
Se sono stati usati metadati per fornire l'identificatore dell'applicazione, è necessario copiarlo da lì al codice di inizializzazione e rimuovere
<meta-data android:name="net.hockeyapp.android.appIdentifier" android:value="..." />
dal file AndroidManifest.xml .
Sostituire le chiamate API HockeyApp in tutta l'applicazione. Di seguito sono riportate le tabelle di mapping delle API dettagliate.
3. Servizi e confronto delle funzionalità
Core
Funzionalità | HockeyApp | App Center |
---|---|---|
Modificare il livello di log | HockeyLog.setLogLevel |
AppCenter.setLogLevel |
Identificare le installazioni | Solo per uso interno | AppCenter.getInstallId |
Identificare gli utenti | Arresti anomali solo | AppCenter.setUserId |
Analisi
Funzionalità | HockeyApp | App Center |
---|---|---|
Tenere traccia automatica delle sessioni | Sì, può essere disabilitato da MetricsManager.setSessionTrackingDisabled |
Documentazione (non può essere disabilitata) |
Eventi personalizzati con proprietà | MetricsManager.trackEvent |
Analytics.trackEvent |
Disabilitare il servizio in fase di esecuzione |
MetricsManager.disableUserMetrics e MetricsManager.enableUserMetrics |
Analytics.setEnabled |
Crashes
Funzionalità | HockeyApp | App Center |
---|---|---|
Invia automaticamente arresti anomali | Disattivata per impostazione predefinita | Documentazione (abilitata per impostazione predefinita) |
Collegare metadati aggiuntivi | Sì | Documentazione (può essere collegata dal listener) |
Personalizzare la finestra di dialogo utente | Sì | Documentazione (non fornita per impostazione predefinita) |
Ottenere informazioni sullo stato di invio | Sì | Documentazione |
Informazioni su un arresto anomalo precedente | CrashManager.getLastCrashDetails |
Crashes.getLastSessionCrashReport |
Distribuzione
Nota
A differenza di HockeyApp, la funzionalità aggiornamenti in-app di App Center funziona solo con le build RELEASE (per impostazione predefinita) distribuite usando il servizio Distribuzione di App Center . Se l'app usa un gruppo di distribuzione privato, dopo l'installazione e l'apertura dell'app per la prima volta dopo l'aggiunta di App Center Distribute SDK, verrà aperto un browser per autenticare l'utente e abilitare gli aggiornamenti in-app. Questo browser verrà aperto anche se si imposta la traccia di aggiornamento privato in-app in fase di esecuzione. Si tratta di un passaggio ONE-TIME che non si verificherà per le versioni successive dell'app. Per altre informazioni, vedere la documentazione di Distribuzione di App Center .
Funzionalità | HockeyApp | App Center |
---|---|---|
Aggiornamenti in-app con restrizioni | LoginManager.verifyLogin |
Distribute.setUpdateTrack |
Disabilitare il servizio in fase di esecuzione | UpdateManager.unregister |
Distribute.setEnabled |
Personalizzare la finestra di dialogo di aggiornamento | Sì | Documentazione |
Servizio commenti e suggerimenti
Il servizio di feedback non sarà supportato in App Center. Vedere Il feedback di HockeyApp.