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 di lingkungan seperti itu selama pengembangan dan pengujian, Anda dapat membuat build debug aplikasi yang menggunakan penyedia debug App Check alih-alih penyedia pengesahan nyata.

Platform Apple

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

  1. Dalam file ios/Runner/AppDelegate.swift (atau AppDelegate.m ), buat dan setel pabrik penyedia debug App Check di 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 lebih baru):

    1. Buka Produk > Skema > Edit skema .
    2. Pilih Jalankan dari menu sebelah kiri, lalu pilih tab Argumen .
    3. Di bagian Argumen yang Diteruskan saat Peluncuran , 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 mengirim permintaan ke backend. Sebagai contoh:

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

    Tangkapan layar item menu Kelola Token Debug

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

Karena token ini memungkinkan 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 Firebase console.

Android

Untuk menggunakan penyedia debug saat menjalankan aplikasi Flutter Anda di lingkungan Android, terapkan 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 mengirim 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 Pemeriksaan Aplikasi di Firebase console, pilih Kelola token debug dari menu tambahan aplikasi Anda. Kemudian, daftarkan token debug yang Anda login di langkah sebelumnya.

    Tangkapan layar item menu Kelola Token Debug

Setelah Anda mendaftarkan token, layanan backend Firebase akan menerimanya sebagai token yang 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 kapan pun Anda menggunakan aplikasi Anda 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 Pemeriksaan Aplikasi di Firebase console, pilih Kelola token debug dari menu tambahan aplikasi Anda. Kemudian, daftarkan token debug yang Anda login di langkah sebelumnya.

    Tangkapan layar item menu Kelola Token Debug

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

Karena token ini memungkinkan 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 Firebase console.