Initialize and configure FirebaseApp using FirebaseApp.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
FirebaseConfiguration.shared.setLoggerLevel(_:) with the desired level.
A Timestamp represents a point in time independent of any time zone or calendar, represented as
seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using
the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It
is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are “smeared” so that no
leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to
9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to
and from RFC 3339 date strings.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-11 UTC."],[],[],null,["# FirebaseCore Framework Reference\n\nClasses\n=======\n\nThe following classes are available globally.\n- `\n ``\n ``\n `\n\n ### [FirebaseApp](/docs/reference/swift/firebasecore/api/reference/Classes/FirebaseApp)\n\n `\n ` \n The entry point of Firebase SDKs.\n\n Initialize and configure `FirebaseApp` using [FirebaseApp.configure()](/docs/reference/swift/firebasecore/api/reference/Classes/FirebaseApp#/c:objc(cs)FIRApp(cm)configure)\n or other customized ways as shown below.\n\n The logging system has two modes: default mode and debug mode. In default mode, only logs with\n log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent\n to device. The log levels that Firebase uses are consistent with the ASL log levels.\n\n Enable debug mode by passing the `-FIRDebugEnabled` argument to the application. You can add this\n argument in the application's Xcode scheme. When debug mode is enabled via `-FIRDebugEnabled`,\n further executions of the application will also be in debug mode. In order to return to default\n mode, you must explicitly disable the debug mode with the application argument\n `-FIRDebugDisabled`.\n\n It is also possible to change the default logging level in code by calling\n `FirebaseConfiguration.shared.setLoggerLevel(_:)` with the desired level. \n\n #### Declaration\n\n Swift \n\n class FirebaseApp : NSObject\n\n- `\n ``\n ``\n `\n\n ### [FirebaseConfiguration](/docs/reference/swift/firebasecore/api/reference/Classes/FirebaseConfiguration)\n\n `\n ` \n This interface provides global level properties that the developer can tweak. \n\n #### Declaration\n\n Swift \n\n class FirebaseConfiguration : NSObject\n\n- `\n ``\n ``\n `\n\n ### [FirebaseOptions](/docs/reference/swift/firebasecore/api/reference/Classes/FirebaseOptions)\n\n `\n ` \n This class provides constant fields of Google APIs. \n\n #### Declaration\n\n Swift \n\n class FirebaseOptions : NSObject, NSCopying\n\n- `\n ``\n ``\n `\n\n ### [Timestamp](/docs/reference/swift/firebasecore/api/reference/Classes/Timestamp)\n\n `\n ` \n A Timestamp represents a point in time independent of any time zone or calendar, represented as\n seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using\n the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It\n is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no\n leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to\n 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to\n and from RFC 3339 date strings. \n See\n \u003chttps://github.com/google/protobuf/blob/main/src/google/protobuf/timestamp.proto\u003e for the reference timestamp definition. \n\n #### Declaration\n\n Swift \n\n class Timestamp : NSObject, NSCopying, @unchecked Sendable"]]