После регистрации приложения для App Check оно обычно не будет работать в эмуляторе или в среде непрерывной интеграции (CI), поскольку эти среды не считаются допустимыми устройствами. Если вы хотите запустить приложение в такой среде во время разработки и тестирования, вы можете создать отладочную сборку приложения, которая использует отладочный провайдер App Check вместо настоящего провайдера подтверждения.
Платформы Apple
Чтобы использовать поставщик отладки при интерактивном запуске приложения в симуляторе (например, во время разработки), выполните следующие действия:
Активируйте проверку приложения с помощью поставщика отладки сразу после инициализации приложения 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()); }
Включите ведение журнала отладки в вашем проекте Xcode (v11.0 или новее):
- Откройте Продукт > Схема > Редактировать схему .
- Выберите «Выполнить» в левом меню, затем выберите вкладку «Аргументы» .
- В разделе «Аргументы, передаваемые при запуске» добавьте
-FIRDebugEnabled
.
Откройте
ios/Runner.xcworkspace
с помощью Xcode и запустите свое приложение в Simulator. Ваше приложение выведет локальный отладочный токен в отладочный вывод, когда Firebase попытается отправить запрос в бэкэнд. Например:Firebase App Check Debug Token: 123a4567-b89c-12d3-e456-789012345678
В разделе App Check консоли Firebase выберите Manage debug tokens из меню переполнения вашего приложения. Затем зарегистрируйте отладочный токен, который вы зарегистрировали на предыдущем шаге.
После регистрации токена внутренние службы 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
В разделе App Check консоли Firebase выберите Manage debug tokens из меню переполнения вашего приложения. Затем зарегистрируйте отладочный токен, который вы зарегистрировали на предыдущем шаге.
После регистрации токена внутренние службы Firebase примут его как действительный.
Веб
Чтобы использовать поставщик отладки при запуске приложения с localhost
(например, во время разработки), выполните следующие действия:
В файле
web/index.html
включите режим отладки, установивself.FIREBASE_APPCHECK_DEBUG_TOKEN
вtrue
:<body> <script> self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; </script> ... </body>
Запустите свое веб-приложение локально и откройте инструмент разработчика браузера. В консоли отладки вы увидите отладочный токен:
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
.В разделе App Check консоли Firebase выберите Manage debug tokens из меню переполнения вашего приложения. Затем зарегистрируйте отладочный токен, который вы зарегистрировали на предыдущем шаге.
После регистрации токена внутренние службы Firebase примут его как действительный.
Поскольку этот токен позволяет получить доступ к вашим ресурсам Firebase без действительного устройства, крайне важно, чтобы вы сохранили его конфиденциальным. Не фиксируйте его в публичном репозитории, и если зарегистрированный токен когда-либо будет скомпрометирован, немедленно отзовите его в консоли Firebase.