Eseguire la migrazione da HockeySDK a App Center SDK per iOS
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
1.1 Rimuovere il vecchio hockeySDK
Manuale
Se l'SDK è stato aggiunto manualmente, seguire questa procedura:
Rimuovere
HockeySDK.embeddedframework
riferimenti dal progetto XCode. Fare clic sul pulsante Rimuovi riferimento , non fare clic sul pulsante Sposta nel cestino .Aprire le impostazioni del progetto e nella scheda Impostazioni di compilazione nelle sezioni Percorsi di ricerca del framework di ricerca / intestazione rimuovere i percorsi per i file di intestazione correlati a HockeySDK.
Aprire le impostazioni del progetto e nella scheda Fasi di compilazione nella sezione Collegamento binario con librerie rimuovere le voci di dipendenza correlate a HockeySDK.
Eliminare
HockeySDK.embeddedframework
dal file system.
Podfile
Se è stato aggiunto l'SDK usando CocoaPods, rimuovere la pod "HockeySDK"
riga dal podfile, quindi eseguire pod install
.
Carthage
Rimuovere riferimenti HockeySDK dall'oggetto
Cartfile
. EliminareCartfile.Resolved
dal file system.Eliminare
HockeySDK.framework
eHockeySDK.framework.dSYM
dal progetto XCode e fare clic sul pulsante Sposta nel cestino .Aprire la scheda Fasi di compilazione e individuare la sezione Esegui script . Rimuovere HockeyApp da
input.xcfilelist
eoutput.xcfilelist
.
1.2 Aggiungere il nuovo SDK di App Center
App Center SDK supporta l'integrazione tramite Cocoapods, Carthage, Swift Package Manager e usando i Framework nel progetto Xcode. Leggere istruzioni dettagliate su come integrare App Center SDK nella documentazione di App Center SDK.
Nota
App Center SDK è progettato con un approccio modulare in modo da poter usare qualsiasi o tutti i servizi. 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 AppDelegate .
Prima di:
@import HockeySDK;
import HockeySDK
Dopo:
@import AppCenter; @import AppCenterAnalytics; @import AppCenterCrashes; @import AppCenterDistribute;
import AppCenter import AppCenterAnalytics import AppCenterCrashes import AppCenterDistribute
Sostituire il codice di registrazione
Trovare il metodo e sostituire occorrenze di
didFinishLaunchingWithOptions
codice HockeyApp.Prima di:
[[BITHockeyManager sharedHockeyManager] configureWithIdentifier:@"APP_IDENTIFIER"]; [[BITHockeyManager sharedHockeyManager] startManager]; [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation];
BITHockeyManager.shared().configure(withIdentifier: "APP_IDENTIFIER") BITHockeyManager.shared().start() BITHockeyManager.shared().authenticator.authenticateInstallation()
Dopo:
[MSACAppCenter start:@"{Your app secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class], [MSACDistribute class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self, Distribute.self])
Nota
App Center SDK non ha equivalenti per
[[BITHockeyManager sharedHockeyManager] configureWithBetaIdentifier:liveIdentifier:delegate]
.[Facoltativo] Modificare l'info.plist del progetto
Se si intende usare Distribute, seguire questa procedura:
- Aggiungere una nuova chiave per
URL types
oCFBundleURLTypes
nel file Info.plist (nel caso in cui XCode visualizzi info.plist come codice sorgente). - Modificare la chiave del primo elemento figlio in
URL Schemes
oCFBundleURLSchemes
. - Immettere
appcenter-${APP_SECRET}
come schema URL e sostituire${APP_SECRET}
con il segreto app dell'app.
Per altre informazioni su questo argomento, vedere la documentazione di Distribuzione di App Center.
- Aggiungere una nuova chiave per
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 |
---|---|---|
Regolare il livello di log | [BITHockeyManager sharedHockeyManager].logLevel = BITLogLevelVerbose |
[MSACAppCenter setLogLevel:MSACLogLevelVerbose] |
Identificare le installazioni | [BITHockeyManager sharedHockeyManager].installString |
[MSACAppCenter installId] |
Identificare gli utenti | [BITHockeyManager sharedHockeyManager].userID |
[MSACAppCenter setUserId:@"your-user-id"] |
Analisi
HockeySDK abilita la raccolta delle metriche per impostazione predefinita.
App Center SDK registra il servizio Analytics solo se si passa Analytics
la classe al start
metodo.
Funzionalità | HockeyApp | App Center |
---|---|---|
Tenere traccia automatica delle sessioni | Non è possibile disabilitare | Documentazione (non può essere disabilitata) |
Eventi personalizzati con proprietà | Sì | [MSACAnalytics trackEvent:withProperties:] |
Disabilitare il servizio in fase di esecuzione | [BITHockeyManager sharedHockeyManager].disableMetricsManager = YES |
[MSACAnalytics setEnabled:NO] |
Crashes
HockeySDK consente di segnalare l'arresto anomalo per impostazione predefinita. Gli arresti anomali verranno inviati immediatamente al server alla successiva avvio dell'app.
App Center SDK registra arresti anomali solo se si passa Crashes
la classe al start
metodo.
Funzionalità | HockeyApp | App Center |
---|---|---|
Invia automaticamente arresti anomali | [[BITHockeyManager sharedHockeyManager].crashManager setCrashManagerStatus: BITCrashManagerStatusAutoSend] |
Documentazione (abilitata per impostazione predefinita) |
Generare un arresto anomalo del test | [[BITHockeyManager sharedHockeyManager].crashManager generateTestCrash] |
[MSACCrashes generateTestCrash] |
Informazioni sull'arresto anomalo precedente | [[BITHockeyManager sharedHockeyManager].crashManager lastSessionCrashDetails] |
[MSACCrashes lastSessionCrashReport] |
Gestione delle eccezioni mach | Disattivato per impostazione predefinita | Documentazione (abilitata per impostazione predefinita) |
Collegare metadati aggiuntivi | Sì | Documentazione (può essere collegata dal delegato) |
Personalizzare la finestra di dialogo utente | setAlertViewHandler | Documentazione (non fornita per impostazione predefinita) |
Disabilitare il servizio in fase di esecuzione | [[BITHockeyManager sharedHockeyManager] setDisableCrashManager: YES] |
[MSACCrashes setEnabled:NO] |
Distribuzione
Nota
A differenza di HockeyApp, la funzionalità aggiornamenti in-app di App Center funzionerà SOLO con le compilazioni distribuite usando il servizio Distribuzione di App Center. La distribuzione non funzionerà quando il debugger è collegato. 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 .
HockeySDK non abilita gli aggiornamenti in-app per impostazione predefinita.
App Center SDK registra il servizio aggiornamenti in-app solo se si passa Distribute
la classe al start
metodo. Questo modulo è abilitato per impostazione predefinita, a differenza di HockeySDK.
Funzionalità | HockeyApp | App Center |
---|---|---|
Aggiornamenti in-app con restrizioni | [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation] |
MSACDistribute.updateTrack |
Disabilitare il servizio in fase di esecuzione | [[BITHockeyManager sharedHockeyManager] setDisableUpdateManager: YES] |
[MSACDistribute setEnabled:NO] |
Personalizzare la finestra di dialogo di aggiornamento | shouldDisplayUpdateAlertForUpdateManager | Documentazione |