Compartilhar via


Outras APIs WPF e WinForms

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 a migração.

Saiba mais sobre linhas do tempo e alternativas de suporte.

Ajustar o nível de log

Você pode controlar a quantidade de mensagens de log que aparecem do App Center no console. Use a LogLevel API para habilitar o registro em log adicional durante a depuração. Por padrão, ele é definido ASSERT como para os ambientes de App Store eWARN, caso contrário, .

Para ter o maior número possível de mensagens de log, use LogLevel.Verbose.

AppCenter.LogLevel = LogLevel.Verbose;

Identificar instalações

O SDK do App Center cria uma UUID para cada dispositivo depois que o aplicativo é instalado. Esse identificador permanece o mesmo para um dispositivo quando o aplicativo é atualizado e um novo é gerado somente quando o aplicativo é reinstalado. A API a seguir é útil para fins de depuração.

System.Guid? installId = await AppCenter.GetInstallIdAsync();

Identificar usuários

O SDK do App Center dá suporte à configuração de uma ID de usuário usada para aumentar os relatórios de falha. Para usar essa funcionalidade:

  1. Configure o SDK do App Center chamando AppCenter.Start(...) conforme descrito no guia de introdução do SDK do App Center.
  2. Defina um userID no SDK usando o seguinte código:
AppCenter.SetUserId("your-user-id");

Depois de definir uma ID de usuário, você pode usar o recurso de pesquisa do App Center para pesquisar relatórios de falha específicos para a ID. Saiba mais na documentação de pesquisa do App Center.

Observação

O valor da ID de usuário é limitado a 256 caracteres. Ele será mostrado com seus relatórios de falha, mas não usado para agregação ou contagens de usuários afetados. Caso você defina a ID de usuário várias vezes, somente a última ID de usuário será usada. Você precisa definir a ID de usuário por conta própria antes da inicialização de cada aplicativo, pois esse valor não é armazenado pelo SDK entre inicializações.

Desabilitar todos os serviços em runtime

Se você quiser desabilitar todos os serviços do App Center de uma só vez, use a Enabled propriedade . Quando desabilitado, o SDK não encaminhará nenhuma informação para o App Center.

AppCenter.SetEnabledAsync(false);

Para habilitar todos os serviços mais uma vez, use a mesma API, mas passe true como um parâmetro.

AppCenter.SetEnabledAsync(true);

Você não precisa aguardar essa chamada para tornar outras chamadas à API (como IsEnabledAsync) consistentes.

O estado é persistente no armazenamento do dispositivo entre as inicializações de aplicativos.

Alterar o estado do serviço em runtime

Habilite ou desabilite os serviços no runtime com o seguinte código:

Analytics.SetEnabledAsync(false);

Não permitir solicitações de rede

No SDK do App Center, as solicitações de rede são permitidas por padrão. Se você quiser enviar dados que o SDK do App Center coleta pela preocupação do usuário, você pode não permitir o envio automático de dados.

AppCenter.IsNetworkRequestsAllowed = false;

Nesse caso, o SDK do App Center continua a coletar dados, mas eles serão enviados somente quando as solicitações de rede forem permitidas.

AppCenter.IsNetworkRequestsAllowed = true;

Observação

Esse valor é retido entre as partidas.

A qualquer momento, você pode marcar se o envio de dados no SDK do App Center é permitido ou não.

AppCenter.IsNetworkRequestsAllowed;

Verificar se o App Center está habilitado

Você também pode marcar se o App Center estiver habilitado ou não.

bool enabled = await AppCenter.IsEnabledAsync();

Verificar a versão do SDK do App Center no runtime

Você pode obter a versão do SDK do App Center que está usando no momento.

AppCenter.SdkVersion;

Tamanho de armazenamento

Ao usar o SDK do App Center, os logs são armazenados localmente no dispositivo. Logs grandes podem ocupar muito espaço, portanto, você pode optar por limitar o tamanho do banco de dados local.

Você pode usar a SetMaxStorageSizeAsync API para definir o tamanho do BD local. A API é assíncrona e o retorno de chamada é chamado quando você inicia os serviços do App Center. Por esse motivo, SetMaxStorageSizeAsync deve ser chamado antes da chamada para AppCenter.Start(...). Você só pode chamar a API uma vez.

// Use 20 MB for storage.
AppCenter.SetMaxStorageSizeAsync(20 * 1024 * 1024).ContinueWith((storageTask) => {
    // The storageTask.Result is false when the size cannot be honored.
});
AppCenter.Start("{Your App Secret}", typeof(Analytics));

Se você não definir o tamanho máximo do armazenamento, o SDK usará um tamanho máximo padrão de 10 MB. O tamanho mínimo que você tem permissão para definir é 20 KB.

Observação

O tamanho máximo real do armazenamento pode ser maior do que o valor escolhido. O SQLite arredonda o tamanho para o próximo múltiplo do tamanho da página. O SDK do App Center usa um tamanho de página de 4 KB.

Observação

Os logs com mais de 25 dias serão descartados.

Outras APIs

O pacote NuGet do .NET é compartilhado com O Xamarin e UWP, que têm mais funcionalidades. Todas as APIs que não estão documentadas para WPF e WinForms nesta página retornarão null ou false não farão nada no WPF e no WinForms. As outras APIs são visíveis para que você possa usá-las em uma biblioteca portátil (como ao usar o SDK em um aplicativo Xamarin.Forms que contém um projeto UWP), mas essas APIs extras não são implementadas no WPF e no WinForms.