Начало работы с WPF/WinForms

Важно!

Прекращение поддержки Центра приложений Visual Studio запланировано на 31 марта 2025 г. Хотя вы можете продолжать использовать Центр приложений Visual Studio, пока он не будет полностью выведен из эксплуатации, существует несколько рекомендуемых вариантов, на которые вы можете рассмотреть возможность миграции.

Узнайте больше о сроках поддержки и альтернативных вариантах.

Пакет SDK центра приложений использует модульную архитектуру, поэтому вы можете использовать любую или все службы.

Давайте приступим к настройке пакета SDK центра приложений в приложении для использования аналитики Центра приложений и сбоев Центра приложений.

1. Предварительные требования

Прежде чем приступить к работе, убедитесь, что у вас есть следующие необходимые компоненты.

  • Проект предназначен для платформа .NET Framework 4.6.2 (или более поздней версии) или .NET Core 3.1 (или более поздней версии).
  • .NET Core поддерживается только в том случае, если приложение WPF/WinForms работает в Windows.
  • Если вы используете пакет SDK из переносимой библиотеки, он должен быть предназначен для .NET Standard 2.0 или более поздней версии (PCL не поддерживается).
  • Тип проекта PackageReference. Это требование исходит из библиотеки SQLitePCL.raw . Дополнительные сведения см. в .https://github.com/ericsink/SQLitePCL.raw/issues/537
  • Существует известная проблема при интеграции пакета SDK в проекты VSTO. Дополнительные сведения см. на странице https://github.com/microsoft/appcenter-sdk-dotnet/issues/1583/.

2. Создайте приложение на портале Центра приложений, чтобы получить секрет приложения

Если вы уже создали приложение на портале Центра приложений, этот шаг можно пропустить.

  1. Зарегистрируйтесь или войдите в систему и нажмите синюю кнопку в правом верхнем углу портала с надписью Добавить и выберите Добавить новое приложение в раскрывающемся меню.
  2. Введите имя и необязательное описание приложения.
  3. Выберите соответствующую ОС и платформу в зависимости от проекта, как описано выше.
  4. Нажмите кнопку в правом нижнем углу с надписью Добавить новое приложение.

После создания приложения его секрет можно получить на странице Параметры на портале Центра приложений. В правом верхнем углу страницы Параметры щелкните тройную вертикальную точку и выберите Copy app secret , чтобы получить секрет приложения.

3. Добавление модулей пакета SDK центра приложений

Пакет SDK центра приложений можно интегрировать с помощью Visual Studio или консоли диспетчера пакетов.

Примечание

Пакет SDK центра приложений использует сборки со строгими именами для обеспечения совместимости с приложениями, использующими знак со строгим именем.

Visual Studio

  • Запустите Visual Studio.
  • Щелкните Файл>Открыть и выберите решение.
  • В навигаторе решения щелкните правой кнопкой мыши Ссылки и выберите Управление пакетами NuGet.
  • На вкладке Обзор найдите Центр приложений и установите пакеты Microsoft.AppCenter.Analytics и Microsoft.AppCenter.Crashes .

Консоль диспетчера пакетов

  • Откройте консоль в Visual Studio. Для этого выберите Сервис>Консоль диспетчера>пакетов NuGet.
  • Введите такие команды:
Install-Package Microsoft.AppCenter.Analytics
Install-Package Microsoft.AppCenter.Crashes

Примечание

Если вы используете пакет SDK центра приложений в переносимом проекте, необходимо установить пакеты в каждом из проектов: переносимого и проекта, в котором выполняется приложение WPF/WinForms. Для этого необходимо открыть каждый вложенный проект и выполнить соответствующие действия, описанные в разделе Visual Studio .

4. Запустите пакет SDK

Чтобы использовать Центр приложений, согласитесь на нужные модули. По умолчанию модули не запускаются, и необходимо явно вызывать каждый из них при запуске пакета SDK.

4.1. Добавление Start() метода

WPF

Для приложения WPF измените App.xaml.cs и добавьте следующие операторы using:

using Microsoft.AppCenter;
using Microsoft.AppCenter.Analytics;
using Microsoft.AppCenter.Crashes;

Затем в том же файле добавьте следующий код в OnStartup метод :

AppCenter.Start("{Your App Secret}", typeof(Analytics), typeof(Crashes));

Если в App.xaml.cs файле нет OnStartup метода , можно добавить Application.OnStartup(StartupEventArgs) метод . Файл App.xaml.cs должен выглядеть примерно так:

public partial class App : Application
{
    protected override void OnStartup(StartupEventArgs e)
    {
      base.OnStartup(e);
      AppCenter.Start("{Your App Secret}", typeof(Analytics), typeof(Crashes));
    }
  }
}

Предупреждение

Не рекомендуется внедрять секрет приложения в исходный код.

Если вам нужно запустить службы Центра приложений отдельно, выполните следующие действия:

  1. Настройте или запустите его с помощью секрета приложения.
  2. Если код можно вызвать несколько раз, проверка, если центр приложений уже настроен.
  3. Запустите необходимые службы без секрета приложения.
AppCenter.Configure("{Your App Secret}");
if (AppCenter.Configured)
{
    AppCenter.Start(typeof(Analytics)); 
    AppCenter.Start(typeof(Crashes)); 
}

WinForms

Для приложения WinForms измените Program.cs файл и добавьте следующие операторы using:

using Microsoft.AppCenter;
using Microsoft.AppCenter.Analytics;
using Microsoft.AppCenter.Crashes;

Затем в том же файле добавьте следующий код в Main метод перед оператором Application.Run .

AppCenter.Start("{Your App Secret}", typeof(Analytics), typeof(Crashes));

Если вам нужно запустить службы Центра приложений отдельно, выполните следующие действия:

  1. Настройте или запустите его с помощью секрета приложения.
  2. Если код можно вызвать несколько раз, проверка, если центр приложений уже настроен.
  3. Запустите необходимые службы без секрета приложения.
AppCenter.Configure("{Your App Secret}");
if (AppCenter.Configured)
{
    AppCenter.Start(typeof(Analytics)); 
    AppCenter.Start(typeof(Crashes)); 
}

Предупреждение

Не рекомендуется внедрять секрет приложения в исходный код.

4.2. Замените заполнитель секретом приложения

Обязательно замените {Your App Secret} текст фактическим значением для приложения. Секрет приложения можно найти на странице начало работы или на странице параметров на портале Центра приложений.

Страница начало работы содержит приведенный выше пример кода с секретом приложения. Вы можете скопировать и вставить весь пример.

В приведенном выше примере показано, как использовать метод и включить аналитику Start() Центра приложений.

Если вы явно не указали каждую службу в качестве параметров в методе start, вы не сможете использовать эту службу Центра приложений. Кроме того, Start() API можно использовать только один раз в жизненном цикле приложения. Все остальные вызовы будут записывать предупреждение в консоль, и будут доступны только службы, включенные в первый вызов.

Хорошо, вы все настроены для визуализации сбоев на портале, которые пакет SDK собирает автоматически.

Ознакомьтесь с документацией по аналитике Центра приложений и сбоям центра приложений , чтобы узнать, как настроить и использовать более сложные функции обеих служб.