Dopo aver registrato l'app per App Check, in genere l'app non verrà eseguita in un emulatore o da un ambiente di integrazione continua (CI), poiché questi ambienti non sono considerati dispositivi validi. Se vuoi eseguire la tua app in un ambiente simile durante lo sviluppo e i test, puoi creare una build di debug della tua app che utilizzi il provider di debug di App Check anziché un provider di attestazione reale.
Piattaforme Apple
Per utilizzare il provider di debug durante l'esecuzione interattiva dell'app in un simulatore (ad esempio durante lo sviluppo):
Attiva App Check con il provider di debug subito dopo aver inizializzato la tua app 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()); }
Attiva il logging di debug nel progetto Xcode (v11.0 o successiva):
- Apri Prodotto > Schema > Modifica schema.
- Seleziona Esegui dal menu a sinistra, quindi seleziona la scheda Argomenti.
- Nella sezione Argomenti passati al momento dell'avvio, aggiungi
-FIRDebugEnabled
.
Apri
ios/Runner.xcworkspace
con Xcode ed esegui l'app nel Simulatore. L'app stampa un token di debug locale nell'output di debug quando Firebase versucht di inviare una richiesta al backend. Ad esempio:Firebase App Check Debug Token: 123a4567-b89c-12d3-e456-789012345678
Nella sezione App Check della console Firebase, scegli Gestisci token di debug dal menu overflow della tua app. Quindi, registra il token di debug che hai eseguito nel passaggio precedente.
Dopo aver registrato il token, i servizi di backend di Firebase lo accetteranno come valido.
Poiché questo token consente l'accesso alle risorse Firebase senza un dispositivo valido, è fondamentale mantenerlo privato. Non eseguirne il commit in un repository pubblico e, se un token registrato viene compromesso, revocalo immediatamente nella console Firebase.
Android
Per utilizzare il provider di debug durante l'esecuzione dell'app Flutter in un ambiente Android, implementa il seguente codice nell'applicazione 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());
}
L'app stampa un token di debug locale nell'output di debug quando Firebase tenta di inviare una richiesta al backend. Ad esempio:
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
Nella sezione App Check della console Firebase, scegli Gestisci token di debug dal menu extra dell'app. Quindi, registra il token di debug che hai eseguito nel passaggio precedente.
Dopo aver registrato il token, i servizi di backend di Firebase lo accetteranno come valido.
Web
Per utilizzare il provider di debug durante l'esecuzione della tua app da localhost
(ad esempio
durante lo sviluppo), procedi nel seguente modo:
Nel file
web/index.html
, attiva la modalità di debug impostandoself.FIREBASE_APPCHECK_DEBUG_TOKEN
sutrue
:<body> <script> self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; </script> ... </body>
Esegui l'app web localmente e apri lo strumento per sviluppatori del browser. Nella console di debug, vedrai un token di debug:
AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work.
Questo token viene archiviato localmente nel browser e verrà utilizzato ogni volta che utilizzi la tua app nello stesso browser sulla stessa macchina. Se vuoi utilizzare il token in un altro browser o su un'altra macchina, imposta
self.FIREBASE_APPCHECK_DEBUG_TOKEN
sulla stringa del token anzichétrue
.Nella sezione App Check della console Firebase, scegli Gestisci token di debug dal menu extra dell'app. Quindi, registra il token di debug che hai eseguito nel passaggio precedente.
Dopo aver registrato il token, i servizi di backend di Firebase lo accetteranno come valido.
Poiché questo token consente l'accesso alle risorse Firebase senza un dispositivo valido, è fondamentale mantenerlo privato. Non eseguirne il commit in un repository pubblico e, se un token registrato viene compromesso, revocalo immediatamente nella console Firebase.