Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Gunakan App Check dengan penyedia debug dengan Flutter

Setelah Anda mendaftarkan aplikasi untuk App Check, aplikasi Anda biasanya tidak akan berjalan di emulator atau dari lingkungan continuous integration (CI), karena lingkungan tersebut tidak memenuhi syarat sebagai perangkat yang valid. Jika Anda ingin menjalankan aplikasi Anda di lingkungan seperti itu selama pengembangan dan pengujian, Anda bisa membuat build debug aplikasi Anda yang menggunakan penyedia debug App Check, bukan penyedia pengesahan sebenarnya.

Platform Apple

Untuk menggunakan penyedia debug saat menjalankan aplikasi Anda di simulator secara interaktif (misalnya, selama pengembangan), lakukan hal berikut:

  1. Dalam file ios/Runner/AppDelegate.swift (atau AppDelegate.m ), buat dan setel pabrik penyedia debug App Check dalam build Debug:

    Cepat

    import UIKit
    import Flutter
    import Firebase  // Add the Firebase import.
    
    @UIApplicationMain
    @objc class AppDelegate: FlutterAppDelegate {
      override func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
      ) -> Bool {
        // Use the debug provider in Debug builds:
    #if DEBUG
        let providerFactory = AppCheckDebugProviderFactory()
        AppCheck.setAppCheckProviderFactory(providerFactory)
    #endif
    
        GeneratedPluginRegistrant.register(with: self)
        return super.application(application, didFinishLaunchingWithOptions: launchOptions)
      }
    }
    

    Objective-C

    #import "AppDelegate.h"
    #import "GeneratedPluginRegistrant.h"
    @import Firebase;  // Add the Firebase import.
    
    @implementation AppDelegate
    
    - (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
      // Use the debug provider in Debug builds:
    #if DEBUG
      FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init];
      [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    #endif
      [GeneratedPluginRegistrant registerWithRegistry:self];
      // Override point for customization after application launch.
      return [super application:application didFinishLaunchingWithOptions:launchOptions];
    }
    
    @end
    
  2. Aktifkan logging debug di proyek Xcode Anda (v11.0 atau yang lebih baru):

    1. Buka Produk > Skema > Edit skema .
    2. Pilih Jalankan dari menu sebelah kiri, lalu pilih tab Argumen .
    3. Di bagian Arguments Passed on Launch , tambahkan -FIRDebugEnabled .
  3. Buka ios/Runner.xcworkspace dengan Xcode dan jalankan aplikasi Anda di Simulator. Aplikasi Anda akan mencetak token debug lokal ke output debug saat Firebase mencoba mengirimkan permintaan ke backend. Sebagai contoh:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. Di bagian App Check di Firebase console, pilih Manage debug tokens dari menu luapan aplikasi Anda. Kemudian, daftarkan token debug yang Anda login di langkah sebelumnya.

    Cuplikan layar item menu Kelola Token Debug

Setelah Anda mendaftarkan token, layanan backend Firebase akan menerimanya sebagai valid.

Karena token ini mengizinkan akses ke sumber daya Firebase Anda tanpa perangkat yang valid, Anda harus merahasiakannya. Jangan komit ke repositori publik, dan jika token terdaftar pernah disusupi, segera cabut di konsol Firebase.

Android

Untuk menggunakan penyedia debug saat menjalankan aplikasi Flutter Anda di lingkungan Android, implementasikan kode berikut di aplikasi Flutter Anda:

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());
}

Aplikasi Anda akan mencetak token debug lokal ke output debug saat Firebase mencoba mengirimkan permintaan ke backend. Sebagai contoh:

D DebugAppCheckProvider: Enter this debug secret into the allow list in
the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
  1. Di bagian App Check di Firebase console, pilih Manage debug tokens dari menu luapan aplikasi Anda. Kemudian, daftarkan token debug yang Anda login di langkah sebelumnya.

    Cuplikan layar item menu Kelola Token Debug

Setelah Anda mendaftarkan token, layanan backend Firebase akan menerimanya sebagai valid.

Web

Untuk menggunakan penyedia debug saat menjalankan aplikasi Anda dari localhost (selama pengembangan, misalnya), lakukan hal berikut:

  1. Di file web/index.html , aktifkan mode debug dengan menyetel self.FIREBASE_APPCHECK_DEBUG_TOKEN ke true :

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. Jalankan aplikasi web Anda secara lokal dan buka alat pengembang browser. Di konsol debug, Anda akan melihat token debug:

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

    Token ini disimpan secara lokal di browser Anda dan akan digunakan setiap kali Anda menggunakan aplikasi di browser yang sama di mesin yang sama. Jika Anda ingin menggunakan token di browser lain atau di komputer lain, setel self.FIREBASE_APPCHECK_DEBUG_TOKEN ke string token alih-alih true .

  3. Di bagian App Check di Firebase console, pilih Manage debug tokens dari menu luapan aplikasi Anda. Kemudian, daftarkan token debug yang Anda login di langkah sebelumnya.

    Cuplikan layar item menu Kelola Token Debug

Setelah Anda mendaftarkan token, layanan backend Firebase akan menerimanya sebagai valid.

Karena token ini mengizinkan akses ke sumber daya Firebase Anda tanpa perangkat yang valid, Anda harus merahasiakannya. Jangan komit ke repositori publik, dan jika token terdaftar pernah disusupi, segera cabut di konsol Firebase.