Use App Check with the debug provider with C++

After you have registered your app for App Check, your app normally won't run on desktop platforms, in an emulator, or from a continuous integration (CI) environment, since those environments don't qualify as valid devices. If you want to run your app in such an environment during development and testing, you can create a debug build of your app that uses the App Check debug provider instead of a real attestation provider.

Configuration via code

To use the debug provider while running your app (during development, for example), do the following:

  1. In the App Check section of the Firebase console, choose Manage debug tokens from your app's overflow menu. Then, create a new debug token. You'll need the token in the next step.

    Because this token allows access to your Firebase resources without a valid device, it is crucial that you keep it private. Don't commit it to a public repository, and if a registered token is ever compromised, revoke it immediately in the Firebase console.

    Screenshot of the Manage Debug Tokens menu item

  2. In your initialization code, do the following:

    #include"firebase/app_check.h"
    voidInitializeFirebase(){
    // Configure the Debug Provider factory with your debug token.
    firebase::app_check::DebugAppCheckProviderFactory::GetInstance()
    ->SetDebugToken("INSERT YOUR DEBUG TOKEN HERE");
    // Set App Check to use the debug provider factory
    firebase::app_check::AppCheck::SetAppCheckProviderFactory(
    firebase::app_check::DebugAppCheckProviderFactory::GetInstance());
    // Proceed to initialize Firebase as normal
    }
    

Other configuration options

Other configuration options are available based on platform, for example using the platforms environment variables. For more information, refer to the iOS+ or Android debug provider documentation.

Because this token allows access to your Firebase resources without a valid device, it is crucial that you keep it private. Don't commit it to a public repository, and if a registered token is ever compromised, revoke it immediately in the Firebase console.

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025年11月18日 UTC.