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

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

платформы Apple

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

  1. Активируйте проверку приложений с помощью поставщика отладки сразу после инициализации приложения Firebase:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set appleProvider to `AppleProvider.debug`
        appleProvider: AppleProvider.debug,
      );
      runApp(App());
    }
    
  2. Включите ведение журнала отладки в вашем проекте Xcode (версия 11.0 или новее):

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

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

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

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

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

Андроид

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

import 'package:flutter/material.dart';
import 'package:firebase_core/firebase_core.dart';

// Import the firebase_app_check plugin
import 'package:firebase_app_check/firebase_app_check.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  await FirebaseAppCheck.instance.activate(
    webRecaptchaSiteKey: 'recaptcha-v3-site-key',
    // Set androidProvider to `AndroidProvider.debug`
    androidProvider: AndroidProvider.debug,
  );
  runApp(App());
}

Ваше приложение напечатает локальный токен отладки в выходные данные отладки, когда Firebase попытается отправить запрос на серверную часть. Например:

D DebugAppCheckProvider: Enter this debug secret into the allow list in
the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
  1. В разделе App Check консоли Firebase выберите «Управление токенами отладки» в дополнительном меню вашего приложения. Затем зарегистрируйте токен отладки, который вы зарегистрировали на предыдущем шаге.

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

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

Интернет

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

  1. В файле web/index.html включите режим отладки, установив для self.FIREBASE_APPCHECK_DEBUG_TOKEN значение true :

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. Запустите веб-приложение локально и откройте инструмент разработчика браузера. В консоли отладки вы увидите токен отладки:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.

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

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

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

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

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