Share via


Migrar do HockeySDK para o SDK do App Center para iOS

Importante

O Visual Studio App Center está programado para ser desativado em 31 de março de 2025. Embora você possa continuar a usar o Visual Studio App Center até que ele seja totalmente desativado, há várias alternativas recomendadas para as quais você pode considerar migrar.

Saiba mais sobre linhas do tempo e alternativas de suporte.

Siga esta documentação se você quiser atualizar seu aplicativo para usar o SDK do App Center em vez do HockeySDK.

1. Atualizar as bibliotecas

1.1 Remover HockeySDK antigo

Manual

Se você adicionou o SDK manualmente, siga estas etapas:

  1. Remova HockeySDK.embeddedframework a referência do projeto XCode. Clique no botão Remover referência , não clique no botão Mover para Lixeira .

  2. Abra as configurações do projeto e, na guia Configurações de Build, nas seções Caminhos de Pesquisa de Cabeçalho Caminhos / de PesquisaDa Estrutura Caminhos de Pesquisa, remova os locais para arquivos de cabeçalho relacionados ao HockeySDK.

  3. Abra as configurações do projeto e, na guia Fases de Build, na seção Vincular Binário com Bibliotecas , remova as entradas de dependência relacionadas ao HockeySDK.

  4. Excluir HockeySDK.embeddedframework do sistema de arquivos.

Podfile

Se você adicionou o SDK usando CocoaPods, remova a pod "HockeySDK" linha do Podfile e execute pod install.

Carthage

  1. Remova as referências do HockeySDK do Cartfile. Excluir Cartfile.Resolved do sistema de arquivos.

  2. Exclua HockeySDK.framework e HockeySDK.framework.dSYM do projeto XCode e clique no botão Mover para a Lixeira .

  3. Abra a guia Fases de Build e localize a seção Executar Script . Remova HockeyApp do input.xcfilelist e output.xcfilelistdo .

1.2 Adicionar o novo SDK do App Center

O SDK do App Center dá suporte à integração por meio do Cocoapods, Carthage, Swift Package Manager e usando as Estruturas em seu projeto Xcode. Leia instruções detalhadas sobre como integrar o SDK do App Center na documentação do SDK do App Center.

Observação

O SDK do App Center foi projetado com uma abordagem modular para que você possa usar qualquer um ou todos os serviços. Confira as equivalências na próxima tabela:

Classe HockeyApp Módulo do App Center
MetricsManager Analytics
CrashManager Crashes
UpdateManager Distribute

2. Atualizar o código de instalação do SDK

2.1 Converter o identificador do aplicativo

O SDK do App Center usa identificadores de aplicativo no formato GUID (identificador global exclusivo). A ID do aplicativo HockeyApp pode ser usada pelo App Center, mas você precisa convertê-la em um formato diferente. Para converter o identificador, você deve adicionar quatro hifens para obter uma representação 8-4-4-4-12.

Antes (HockeyApp): 00112233445566778899aabbccddeeff

Depois (App Center): 00112233-4455-6677-8899-aabbccddeeff

2.2 Substituir a inicialização do SDK no código do aplicativo

  1. Substitua as importações a seguir em sua classe AppDelegate .

    Antes:

    @import HockeySDK;
    
    import HockeySDK
    

    Após:

    @import AppCenter;
    @import AppCenterAnalytics;
    @import AppCenterCrashes;
    @import AppCenterDistribute;
    
    import AppCenter
    import AppCenterAnalytics
    import AppCenterCrashes
    import AppCenterDistribute
    
  2. Substituir código de registro

    Localize o didFinishLaunchingWithOptions método e substitua as ocorrências de código do HockeyApp.

    Antes:

    [[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()
    

    Após:

    [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])
    

    Observação

    O SDK do App Center não tem equivalentes para [[BITHockeyManager sharedHockeyManager] configureWithBetaIdentifier:liveIdentifier:delegate].

  3. [Opcional] Modificar o Info.plist do projeto

    Se você pretende usar Distribuir, siga as etapas acima:

    • Adicione uma nova chave para URL types ou CFBundleURLTypes no arquivo Info.plist (caso o XCode exiba seu Info.plist como código-fonte).
    • Altere a chave do primeiro item filho para URL Schemes ou CFBundleURLSchemes.
    • Insira appcenter-${APP_SECRET} como o esquema de URL e substitua ${APP_SECRET} pelo Segredo do Aplicativo do seu aplicativo.

    Para obter mais informações sobre isso, consulte a Documentação de distribuição do App Center.

  4. Substitua as chamadas à API do HockeyApp em todo o aplicativo. As tabelas detalhadas de mapeamento de API são fornecidas abaixo.

3. Comparação de serviços e recursos

Núcleo

Recurso HockeyApp App Center
Ajustar o nível de log [BITHockeyManager sharedHockeyManager].logLevel = BITLogLevelVerbose [MSACAppCenter setLogLevel:MSACLogLevelVerbose]
Identificar instalações [BITHockeyManager sharedHockeyManager].installString [MSACAppCenter installId]
Identificar usuários [BITHockeyManager sharedHockeyManager].userID [MSACAppCenter setUserId:@"your-user-id"]

Análise

O HockeySDK habilita a coleta de métricas por padrão. O SDK do App Center registra o serviço de Análise somente se você passar Analytics a classe para o start método .

Recurso HockeyApp App Center
Acompanhar sessões automaticamente Não pode ser desabilitado Documentação (não pode ser desabilitada)
Eventos personalizados com propriedades Yes [MSACAnalytics trackEvent:withProperties:]
Desabilitar o serviço em runtime [BITHockeyManager sharedHockeyManager].disableMetricsManager = YES [MSACAnalytics setEnabled:NO]

Falhas

O HockeySDK permite relatórios de falhas por padrão. As falhas serão enviadas imediatamente ao servidor na próxima vez que o aplicativo for iniciado. O SDK do App Center registra o serviço Falhas somente se você passar Crashes a classe para o start método .

Recurso HockeyApp App Center
Enviar falhas automaticamente [[BITHockeyManager sharedHockeyManager].crashManager setCrashManagerStatus: BITCrashManagerStatusAutoSend] Documentação (habilitada por padrão)
Gerar uma falha de teste [[BITHockeyManager sharedHockeyManager].crashManager generateTestCrash] [MSACCrashes generateTestCrash]
Informações sobre a falha anterior [[BITHockeyManager sharedHockeyManager].crashManager lastSessionCrashDetails] [MSACCrashes lastSessionCrashReport]
Tratamento de exceção mach Desabilitadas por padrão Documentação (habilitada por padrão)
Anexar metadados adicionais Yes Documentação (pode ser anexada do delegado)
Personalizar caixa de diálogo do usuário setAlertViewHandler Documentação (não fornecida por padrão)
Desabilitar o serviço em runtime [[BITHockeyManager sharedHockeyManager] setDisableCrashManager: YES] [MSACCrashes setEnabled:NO]

Distribuir

Observação

Ao contrário do HockeyApp, o recurso de atualizações no aplicativo do App Center só funcionará com builds distribuídos usando o serviço Distribuição do App Center. Distribuir não funcionará quando o depurador estiver anexado. Se o aplicativo estiver usando um grupo de distribuição privado, depois que o aplicativo for instalado e aberto pela primeira vez depois que o SDK de Distribuição do App Center for adicionado, um navegador será aberto para autenticar o usuário e habilitar atualizações no aplicativo. Esse navegador também será aberto se você definir a faixa de atualização privada no aplicativo em runtime. Esta é uma etapa única que não ocorrerá para versões subsequentes do seu aplicativo. Consulte a Documentação de Distribuição do App Center para obter mais detalhes.

O HockeySDK não habilita atualizações no aplicativo por padrão. O SDK do App Center registra o serviço de atualizações no aplicativo somente se você passar Distribute a classe para o start método . Esse módulo é habilitado por padrão, ao contrário do HockeySDK.

Recurso HockeyApp App Center
Atualizações restritas no aplicativo [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation] MSACDistribute.updateTrack
Desabilitar o serviço em runtime [[BITHockeyManager sharedHockeyManager] setDisableUpdateManager: YES] [MSACDistribute setEnabled:NO]
Personalizar a caixa de diálogo de atualização shouldDisplayUpdateAlertForUpdateManager Documentação