Конфигурация IOS

Материал из Документация Ключ-АСТРОМ
Версия от 17:46, 19 августа 2026; IKuznetsov (обсуждение | вклад) (Новая страница: « = Конфигурация = Настройка ЕдиногоАгента для '''iOS''' осуществляется преимущественно через файл конфигурации <code>Info.plist</code> вашего приложения. Такой подход позволяет определять параметры конфигурации во время сборки. В сценариях, требующих настройки во...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Конфигурация

Настройка ЕдиногоАгента для iOS осуществляется преимущественно через файл конфигурации Info.plist вашего приложения. Такой подход позволяет определять параметры конфигурации во время сборки. В сценариях, требующих настройки во время выполнения, можно использовать ручной запуск.

Чтобы файлы вашего приложения оставались Info.plist чистыми, вы можете переместить все ключи, связанные с ЕдинымАгентом, DTX в отдельный файл Astromkey.plist. Создайте этот файл в том же месте, что и ваш основной файл Info.plist, и добавьте его в этап сборки Copy Bundle Resources целевого приложения. Файл Astromkey.plist должен находиться в корне вашего пакета ресурсов. Для получения дополнительной информации см. файл Info.plist.

Полный список всех доступных ключей конфигурации см. в разделе «Ключи конфигурации iOS».

Ключи конфигурации

В таблицах ниже перечислены наиболее часто используемые ключи конфигурации для iOS ЕдиногоАгента. Добавьте эти ключи в файл конфигурации Info.plist вашего приложения, чтобы настроить поведение ЕдиногоАгента.

Необходимая конфигурация

Ключ конфигурации Тип Описание
DTXApplicationID String Уникальный идентификатор вашего приложения. Получите его с помощью мастера настройки инструментов Ключ-АСТРОМ.
DTXBeaconURL String URL-адрес конечной точки маяка для вашей среды Ключ-АСТРОМ. Получите его в мастере настройки инструментов Ключ-АСТРОМ.

Общая конфигурация

Ключ конфигурации Тип По умолчанию Описание
DTXAutoStart Boolean true При установке значения true ЕдиныйАгент запускается автоматически при запуске вашего приложения. Установите значение false для ручного запуска.
DTXUserOptIn Boolean false Если true, ЕдиныйАгент не собирает никаких данных, пока пользователь явно не даст на это согласие через Astromkey.applyUserPrivacyOptions(...).
DTXLogLevel String OFF Управляет уровнем детализации логов ЕдиногоАгента. Значения: ALL, INFO, WARNING, SEVERE, OFF.

Сообщения о сбоях и ANR

Ключ конфигурации Тип По умолчанию Описание
DTXCrashReportingEnabled Boolean true Включает или отключает автоматическое формирование отчетов о сбоях.
DTXANRReportingEnabled Boolean true Включает или отключает обнаружение статуса «Приложение не отвечает» (ANR).

Инструментарий веб-запросов

Ключ конфигурации Тип По умолчанию Описание
DTXInstrumentWebRequestTiming Boolean true Включает или отключает автоматическую проверку веб-запросов.
DTXURLFilters Array [] Набор шаблонов URL-адресов, которые следует исключить из автоматической инструментации. Поддерживаются подстановочные знаки.

Инструментарий для просмотра и управления жизненным циклом

Ключ конфигурации Тип По умолчанию Описание
DTXInstrumentLifecycleMonitoring Boolean true Включает или отключает автоматический мониторинг жизненного цикла представлений для подклассов UIViewController.
DTXExcludedLifecycleClasses Array [] Массив имен классов UIViewController, которые следует исключить из мониторинга жизненного цикла.

Дополнительные параметры конфигурации, включая мониторинг действий пользователя, настройки гибридных приложений, отслеживание местоположения и привязку сертификатов, см. в разделе «Ключи конфигурации iOS».

Пример конфигурации

В следующем примере показана типичная конфигурация Info.plist:

Пример конфигурации Info.plist

<key>DTXApplicationID</key>
<string>ВАШ_ИД_ЗАЯВЛЕНИЯ</string>
<key>DTXBeaconURL</key>
<string>https://your-environment.astromkey.com/mbeacon</string>
<key>DTXLogLevel</key>
<string>OFF</string>
<key>DTXCrashReportingEnabled</key>
<true/>
<key>DTXInstrumentWebRequestTiming</key>
<true/>
<key>DTXUserOptIn</key>
<false/>

Ручной запуск

По умолчанию ЕдиныйАгент запускается автоматически при запуске вашего приложения. Если вам необходимо настроить такие параметры, как beaconUrl или applicationId во время выполнения, вы можете использовать ручной запуск.

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

Отключить автоматический запуск

Во-первых, отключите автоматический запуск в вашей системе Info.plist:

<key>DTXAutoStart</key>
<false/>

Запустите ЕдиныйАгент вручную

Вызовите функцию Astromkey.startupWithConfig(...) как можно раньше в жизненном цикле вашего приложения — в идеале, на этапе application(_:didFinishLaunchingWithOptions:).

Swift

import Astromkey

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
        Astromkey.startupWithConfig([
            kDTXApplicationID: "YOUR_APPLICATION_ID",
            kDTXBeaconURL: "https://your-environment.astromkey.com/mbeacon"
        ])
        return true
    }
}

Objective-C

@import Astromkey;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application

   didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
   [Astromkey startupWithConfig:@{
       kDTXApplicationID: @"YOUR_APPLICATION_ID",
       kDTXBeaconURL: @"https://your-environment.astromkey.com/mbeacon"
   }];
   return YES;

}

@end

Стартап с дополнительными опциями

Дополнительные параметры конфигурации можно передавать при ручном запуске, используя те же ключи, что и в следующем примере Info.plist:

Swift

Astromkey.startupWithConfig([
    kDTXApplicationID: "YOUR_APPLICATION_ID",
    kDTXBeaconURL: "https://your-environment.astromkey.com/mbeacon",
    kDTXCrashReportingEnabled: true,
    kDTXLogLevel: "INFO",
    kDTXAllowAnyCert: false,
    kDTXUserOptIn: false
])

Objective-C

[Astromkey startupWithConfig:@{

   kDTXApplicationID: @"YOUR_APPLICATION_ID",
   kDTXBeaconURL: @"https://your-environment.astromkey.com/mbeacon",
   kDTXCrashReportingEnabled: @YES,
   kDTXLogLevel: @"INFO",
   kDTXAllowAnyCert: @NO,
   kDTXUserOptIn: @NO

}];

Переданные значения Astromkey.startupWithConfig(...) имеют приоритет над настройками Info.plist. Любые настройки, не включенные в словарь, будут использоваться в качестве значений по умолчанию из Info.plist. Убедитесь, что автозапуск отключен, если вы планируете запускать агента вручную.

Ведение отладочного логирования

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

Отладочное логирование предназначено исключительно для целей разработки и устранения неполадок. Не включайте его в производственной среде.

Включить отладочное логирование

Чтобы включить отладочное логирование для iOS, добавьте ключ конфигурации DTXLogLevel в файл Info.plist вашего приложения:

<key>DTXLogLevel</key>
<string>ALL</string>

В качестве альтернативы, можно включить ведение журнала программно при ручном запуске: Swift

Astromkey.startupWithConfig([
    kDTXApplicationID: "YOUR_APPLICATION_ID",
    kDTXBeaconURL: "https://your-environment.astromkey.com/mbeacon",
    kDTXLogLevel: "ALL"
])

Objective-C

[Astromkey startupWithConfig:@{

   kDTXApplicationID: @"YOUR_APPLICATION_ID",
   kDTXBeaconURL: @"https://your-environment.astromkey.com/mbeacon",
   kDTXLogLevel: @"ALL"

}];