Используйте проверку приложений с поставщиком отладки на платформах Apple.

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

Используйте поставщика отладки в симуляторе

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

  1. В отладочной сборке перед использованием каких-либо серверных служб Firebase создайте и настройте фабрику поставщиков отладки App Check:

    Быстрый

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Цель-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];
  2. Включите ведение журнала отладки в вашем проекте Xcode (версия 11.0 или новее):

    1. Откройте «Продукт» > «Схема» > «Редактировать схему» .
    2. Выберите «Выполнить» в меню слева, затем выберите вкладку «Аргументы» .
    3. В разделе «Аргументы, передаваемые при запуске» добавьте -FIRDebugEnabled .
  3. Запустите приложение. Локальный токен отладки будет зарегистрирован, когда SDK попытается отправить запрос на серверную часть. Например:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. В разделе «Проверка приложений» консоли Firebase выберите «Управление токенами отладки» в дополнительном меню вашего приложения. Затем зарегистрируйте токен отладки, который вы зарегистрировали на предыдущем шаге.

    Снимок экрана: пункт меню «Управление токенами отладки»

После того как вы зарегистрируете токен, серверные службы Firebase примут его как действительный.

Поскольку этот токен обеспечивает доступ к вашим ресурсам Firebase без действительного устройства, крайне важно, чтобы вы сохраняли его конфиденциальность. Не помещайте его в общедоступный репозиторий, и если зарегистрированный токен когда-либо будет скомпрометирован, немедленно отзовите его в консоли Firebase.

Использование поставщика отладки в среде CI

Чтобы использовать поставщика отладки в среде непрерывной интеграции (CI), выполните следующие действия:

  1. В разделе «Проверка приложений» консоли Firebase выберите «Управление токенами отладки» в дополнительном меню вашего приложения. Затем создайте новый токен отладки. Токен понадобится вам на следующем шаге.

    Поскольку этот токен обеспечивает доступ к вашим ресурсам Firebase без действительного устройства, крайне важно, чтобы вы сохраняли его конфиденциальность. Не помещайте его в общедоступный репозиторий, и если зарегистрированный токен когда-либо будет скомпрометирован, немедленно отзовите его в консоли Firebase.

    Снимок экрана: пункт меню «Управление токенами отладки»

  2. Добавьте только что созданный токен отладки в безопасное хранилище ключей вашей системы CI (например, зашифрованные секреты GitHub Actions или зашифрованные переменные Travis CI).

  3. При необходимости настройте свою систему CI так, чтобы ваш токен отладки был доступен в среде CI в качестве переменной среды. Назовите переменную примерно так APP_CHECK_DEBUG_TOKEN_FROM_CI .

  4. В Xcode добавьте переменную среды в вашу схему тестирования с именем FIRAAppCheckDebugToken и чем-то вроде $(APP_CHECK_DEBUG_TOKEN) в качестве значения.

  5. Настройте тестовый сценарий CI для передачи токена отладки в качестве переменной среды. Например:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. В отладочной сборке перед использованием каких-либо серверных служб Firebase создайте и настройте фабрику поставщиков отладки App Check:

    Быстрый

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Цель-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];

Когда ваше приложение работает в среде CI, серверные службы Firebase примут отправленный токен как действительный.