Поделиться через


Начало работы с macOS

Это важно

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

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

Давайте начнем с установки SDK App Center для macOS в вашем приложении, чтобы использовать App Center Analytics и App Center Crashes.

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

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

  • Ваш проект для macOS настроен в Xcode 13 или более поздней версии на macOS версии 10.14.4 или более поздней.
  • Вы нацелены на устройства, работающие на macOS 10.13 или более поздней версии.
  • Вы не используете другую библиотеку, которая предоставляет функции отчетов о сбоях.

Замечание

Пакет SDK для Центра приложений отключит поддержку Xcode 10 с выпуском июньского пакета SDK.

SDK центра приложений для аналитики и обработки сбоев совместим с Mac Catalyst с помощью XCFramework или SwiftPM.

Пакет SDK центра приложений совместим с Apple Silicon.

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

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

  1. Перейдите к appcenter.ms.
  2. Зарегистрируйтесь или войдите в систему и нажмите синюю кнопку в правом верхнем углу портала, где говорится, что " Добавить новое " и выберите " Добавить новое приложение " в раскрывающемся меню.
  3. Введите имя и необязательное описание приложения.
  4. Выберите macOS в качестве ОС и Objective-C/Swift в качестве платформы.
  5. Нажмите кнопку в правом нижнем углу, где говорится, как добавить новое приложение.

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

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

Пакет SDK Центра приложений для macOS можно добавить в приложение с помощью Cocoapods, Carthage, Swift Package Manager или вручную добавить двоичные файлы в проект.

Замечание

В версии 4.0.0 Центра приложений были введены критические изменения. Ознакомьтесь с разделом Миграция на SDK App Center 4.0.0 и выше для переноса Центра приложений с предыдущих версий.

Интеграция с помощью Cocoapods 3.1

  1. Добавьте в свой podfile следующие зависимости, чтобы подключить App Center Analytics и App Center Crashes к вашему приложению. Подключает следующие фреймворки: AppCenter, AppCenterAnalytics и AppCenterCrashes. Вместо этого можно указать, какие службы вы хотите использовать в приложении. Каждая служба имеет свой подспек, и все они полагаются на AppCenter. Он будет автоматически подключен.

     # Use the following line to use App Center Analytics and Crashes.
     pod 'AppCenter'
    
     # Use the following lines if you want to specify which service you want to use.
     pod 'AppCenter/Analytics'
     pod 'AppCenter/Crashes'
    
  2. Запустите pod install, чтобы установить вновь определённый pod и открыть проект .xcworkspace.

Теперь, когда вы интегрировали платформы в приложении, пришло время запустить пакет SDK и использовать службы Центра приложений.

Интеграция 3.2 с помощью Carthage

Ниже приведены инструкции по интеграции пакета SDK Центра приложений в проект Xcode с помощью Carthage версии 0.30 или более поздней, децентрализованного диспетчера зависимостей, который создает зависимости и предоставляет двоичные платформы.

  1. Добавьте следующие зависимости в Cartfile, чтобы интегрировать Центр приложений в ваше приложение. Это подключает все фреймворки. Затем можно связать только те платформы, которые вы хотите использовать в приложении.

    # Use the following line to get the latest version of App Center
    github "microsoft/appcenter-sdk-apple"
    
    # Use the following line to get the specific version of App Center
    github "microsoft/appcenter-sdk-apple" ~> X.X.X
    
  2. Выполните carthage update --platform macOS. Это извлекает зависимости в папку Carthage/Checkouts, а затем создает каждый фреймворк.

  3. Откройте вкладку "Общие параметры" целевого приложения. Перетащите файлы AppCenter.framework, AppCenterAnalytics.framework и AppCenterCrashes.framework из папки Carthage/Build/macOS в навигатор проекта Xcode. Для запуска пакета SDK требуется AppCenter.framework . Если он не добавлен в проект, другие модули не будут работать, и ваше приложение не будет компилироваться.

  4. Откроется диалоговое окно, убедитесь, что выбран целевой объект вашего приложения. Затем нажмите кнопку "Готово".

    Замечание

    Если вы используете carthage copy-frameworks на этапе сборки , вы не должны добавлять пакеты SDK Центра приложений туда, так как они отправляются как статические платформы.

Теперь, когда вы интегрировали платформы в приложении, пришло время запустить пакет SDK и использовать службы Центра приложений.

Интеграция 3.3 с помощью диспетчера пакетов Swift

  1. В меню Xcode выберите пункт "Файл > Swift Package > Add Package Dependency" (Добавить зависимость пакета).
  2. В появившемся диалоговом окне введите URL-адрес репозитория: https://github.com/microsoft/appcenter-sdk-apple.git
  3. В версии нажмите кнопку "Далее основной" и выберите параметр по умолчанию.
  4. Выберите модули, необходимые в столбце "Продукт пакета ".

Теперь, когда вы интегрировали платформы в приложении, пришло время запустить пакет SDK и использовать службы Центра приложений.

Замечание

Если вы интегрируете Центр приложений через SwiftPM и хотите использовать его в целевом объекте расширения вашего приложения, убедитесь, что вы указали DISABLE_DIAMOND_PROBLEM_DIAGNOSTIC=YES в конфигурации. Это необходимо, чтобы избежать ограничений SwiftPM при связывании модуля с несколькими целевыми объектами.

Интеграция 3.4 путем копирования двоичных файлов в проект

Ниже приведены инструкции по интеграции скомпилированных бинарных файлов в проект Xcode для настройки аналитики и обработки сбоев в App Center для приложения macOS.

Замечание

Пакет SDK для Центра приложений XCframeworkподдерживает использование . Если вы хотите интегрировать XCframeworks в проект, скачайте AppCenter-SDK-Apple-XCFramework.zip на странице выпусков и распакуйте его. Результирующее содержимое папки не зависит от платформы, а содержит XCframeworks для каждого модуля. Они могут быть интегрированы так же, как и обычные платформы, как описано ниже.

  1. Скачайте платформы ПАКЕТА SDK Центра приложений , предоставляемые в виде ZIP-файла.

  2. Распакуйте файл и увидите папку с именем AppCenter-SDK-Apple , которая содержит разные платформы для каждой службы Центра приложений на каждой папке платформы. Вызываемая платформа AppCenter требуется в проекте, так как она содержит код, общий доступ между различными модулями.

  3. [Необязательно] Создайте подкаталог для сторонних библиотек.

    • Сторонние библиотеки обычно находятся в подкаталоге (это часто называется Поставщиком), поэтому если проект не использует подкаталог для библиотек, создайте подкаталог поставщика .
    • Создайте группу с именем Vendor внутри проекта Xcode, чтобы имитировать структуру файлов на диске.
  4. Откройте папку AppCenter-SDK-Apple в Finder и скопируйте ее в папку проекта в нужном расположении. Папка содержит платформы в вложенных папках для других платформ, поддерживаемых пакетом SDK Для Центра приложений, поэтому может потребоваться удалить ненужные вложенные папки.

  5. Добавьте платформы SDK в проект в Xcode:

    • Убедитесь, что навигатор проекта отображается ([+1]).
    • Теперь перетащите AppCenter.framework, AppCenterAnalytics.framework и AppCenterCrashes.framework из Finder (те, которые находятся в папке поставщика ) в навигатор проекта Xcode. Для запуска пакета SDK требуется AppCenter.framework. Если отсутствует этот модуль, другие модули не будут работать, и ваше приложение не будет компилироваться.
    • Откроется диалоговое окно, убедитесь, что выбран целевой объект вашего приложения. Затем нажмите кнопку "Готово".

Замечание

Двоичный файл SDK не упакован в соответствии с соглашением об организации macOS. Причина заключается в том, что пакет SDK центра приложений для Mac не является обычной платформой, а статическим. Вы должны связать его как статическую платформу: убедитесь, что вы не внедряете двоичные файлы и не включаете их в этап сборки "копирование ресурсов пакета".

Теперь, когда вы интегрировали платформы в приложении, пришло время запустить пакет SDK и использовать службы Центра приложений.

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

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

4.1 Добавьте инструкции импорта

Откройте файл AppDelegate проекта и добавьте следующие инструкции импорта:

@import AppCenter;
@import AppCenterAnalytics;
@import AppCenterCrashes;
import AppCenter
import AppCenterAnalytics
import AppCenterCrashes

4.2 Добавление start:withServices: метода

Вставьте следующую строку в метод делегата didFinishLaunchingWithOptions приложения:

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self])

Если у вас есть приложение Catalyst, вы можете передавать секреты приложений для iOS и macOS одновременно:

[MSACAppCenter start:@"ios={Your iOS App Secret};macos={Your macOS App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret:"ios={Your iOS App Secret};macos={Your macOS App Secret}", services: [Analytics.self, Crashes.self])

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

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

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

  1. Настройте или запустите его с помощью секрета приложения.
  2. Если код можно вызывать несколько раз, проверьте, настроен ли центр приложений.
  3. Запустите необходимые службы без секрета приложения.
[MSACAppCenter configureWithAppSecret:@"{Your App Secret}"];
if ([MSACAppCenter isConfigured]) {
   [MSACAppCenter startService:[MSACAnalytics class]];
   [MSACAppCenter startService:[MSACCrashes class]];
}
AppCenter.configure(withAppSecret: "{Your App Secret}")
if AppCenter.isConfigured {
    AppCenter.startService(Analytics.self)
    AppCenter.startService(Crashes.self)
}

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

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

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

В приведенном выше примере показано, как использовать метод (start:withServicesдля Swift) и включать как аналитику start(withAppSecret:services:) Центра приложений, так и аварийное завершение работы Центра приложений.

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

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

Например, если вы хотите подключиться к App Center Analytics, необходимо изменить start:withServices вызов API (start(withAppSecret:services:) для Swift), как показано ниже.

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self])

4.4 Добавить интернет-функции для изолированных приложений

Если приложение использует песочницу приложения, необходимо задать возможность разрешить исходящие (клиентские) подключения, чтобы разрешить приложению доступ к Интернету. Xcode 9 включает песочницу приложения по умолчанию, но возможности исходящих подключений должны быть заданы явным образом.

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


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

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