FIRApp


@interface FIRApp : NSObject

The entry point of Firebase SDKs.

Initialize and configure FIRApp using +[FIRApp configure] or other customized ways as shown below.

The logging system has two modes: default mode and debug mode. In default mode, only logs with log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent to device. The log levels that Firebase uses are consistent with the ASL log levels.

Enable debug mode by passing the -FIRDebugEnabled argument to the application. You can add this argument in the application’s Xcode scheme. When debug mode is enabled via -FIRDebugEnabled, further executions of the application will also be in debug mode. In order to return to default mode, you must explicitly disable the debug mode with the application argument -FIRDebugDisabled.

It is also possible to change the default logging level in code by calling setLoggerLevel: on the FIRConfiguration interface.

  • Configures a default Firebase app. Raises an exception if any configuration step fails. The default app is named __FIRAPP_DEFAULT. This method should be called after the app is launched and before using Firebase services. This method is thread safe.

    Declaration

    Swift

    class func configure()

    Objective-C

    + (void)configure;
  • Configures the default Firebase app with the provided options. The default app is named __FIRAPP_DEFAULT. Raises an exception if any configuration step fails. This method is thread safe.

    Declaration

    Swift

    class func configure(options: FirebaseOptions)

    Objective-C

    + (void)configureWithOptions:(nonnull FIROptions *)options;

    Parameters

    options

    The Firebase application options used to configure the service.

  • Configures a Firebase app with the given name and options. Raises an exception if any configuration step fails. This method is thread safe.

    Declaration

    Swift

    class func configure(name: String, options: FirebaseOptions)

    Objective-C

    + (void)configureWithName:(nonnull NSString *)name
                      options:(nonnull FIROptions *)options;

    Parameters

    name

    The application’s name given by the developer. The name should should only contain Letters, Numbers and Underscore.

    options

    The Firebase application options used to configure the services.

  • Returns the default app, or nil if the default app does not exist.

    Declaration

    Swift

    class func app() -> FirebaseApp?

    Objective-C

    + (nullable FIRApp *)defaultApp;
  • Returns a previously created FIRApp instance with the given name, or nil if no such app exists. This method is thread safe.

    Declaration

    Swift

    class func app(name: String) -> FirebaseApp?

    Objective-C

    + (nullable FIRApp *)appNamed:(nonnull NSString *)name;
  • Returns the set of all extant FIRApp instances, or nil if there are no FIRApp instances. This method is thread safe.

    Declaration

    Swift

    class func allApps() -> [String : FirebaseApp]?

    Objective-C

    + (nullable NSDictionary<NSString *, FIRApp *> *)allApps;
  • Cleans up the current FIRApp, freeing associated data and returning its name to the pool for future use. This method is thread safe.

    Declaration

    Swift

    func delete(_ completion: @escaping FirebaseAppVoidBoolCallback)

    Objective-C

    - (void)deleteApp:(nonnull FIRAppVoidBoolCallback)completion;
  • FIRApp instances should not be initialized directly. Call +[FIRApp configure], +[FIRApp configureWithOptions:], or +[FIRApp configureWithNames:options:] directly.

    Declaration

    Objective-C

    - (nonnull instancetype)init;
  • Gets the name of this app.

    Declaration

    Swift

    var name: String { get }

    Objective-C

    @property (readonly, copy, nonatomic) NSString *_Nonnull name;
  • Gets a copy of the options for this app. These are non-modifiable.

    Declaration

    Swift

    @NSCopying var options: FirebaseOptions { get }

    Objective-C

    @property (readonly, copy, nonatomic) FIROptions *_Nonnull options;