# firebase_core_platform_interface 4.2.4

A common platform interface for the firebase_core plugin.




## Installing
```
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.com
flutter pub add 'firebase_core_platform_interface:4.2.4'
```
Published: 2022-01-27T16:09:11.240698Z
Expected archive SHA-256: f9af376a733d91ab8ff1f2942479cb81bbb8a8bc67c2b6c51a9cae5a10f028a0

Available in cache; verification: upstream_checksum
## Direct dependencies
- collection: ^1.0.0
- flutter: map[sdk:flutter]
- meta: ^1.3.0
- plugin_platform_interface: ^2.0.0

## Package README (untrusted upstream documentation)
# firebase_core_platform_interface

A common platform interface for the [`firebase_core`][1] plugin.

This interface allows platform-specific implementations of the `firebase_core`
plugin, as well as the plugin itself, to ensure they are supporting the
same interface.

# Usage

To implement a new platform-specific implementation of `firebase_core`, extend
[`FirebasePlatform`][2] with an implementation that performs the
platform-specific behavior, and when you register your plugin, set the default
`FirebasePlatform` by calling
`FirebasePlatform.instance = MyFirebaseCore()`.

# Note on breaking changes

Strongly prefer non-breaking changes (such as adding a method to the interface)
over breaking changes for this package.

See https://flutter.dev/go/platform-interface-breaking-changes for a discussion
on why a less-clean interface is preferable to a breaking change.

[1]: ../firebase_core
[2]: lib/firebase_core_platform_interface.dart

## Changelog
## 4.2.4

 - **FIX**: allow secondary Firebase App initialization without duplicate app error on hot restart (#7953). ([f4a2c2e6](https://github.com/FirebaseExtended/flutterfire/commit/f4a2c2e63e4dd4f888583110cc65ec84dec14dd7))
 - **FIX**: Fix `FirebaseException` error code bug by making default value: "unknown". (#6897). ([48fed37c](https://github.com/FirebaseExtended/flutterfire/commit/48fed37c8e09b4c1c70f97488215fd39ff2f0616))

## 4.2.3

 - **REFACTOR**: fix all `unnecessary_import` analyzer issues introduced with Flutter 2.8. ([7f0e82c9](https://github.com/FirebaseExtended/flutterfire/commit/7f0e82c978a3f5a707dd95c7e9136a3e106ff75e))

## 4.2.2

 - **FIX**: correctly detect `not-initialized` errors and provide a better error message. ([0578423e](https://github.com/FirebaseExtended/flutterfire/commit/0578423e9868352556bfdd326eef1cca8dbe04aa))

## 4.2.1

 - **FIX**: loosen duplicate app detection checks to allow unset options not to cause a duplicate app exception (#7499).

## 4.2.0

 - **FEAT**: auto inject Firebase scripts (#7358).

## 4.1.0

 - **FEAT**: support initializing default `FirebaseApp` instances from Dart (#6549).

## 4.0.1

 - **FIX**: Fix FirebaseOptions hashCode (#3263).
 - **DOCS**: Add missing homepage/repository links (#6054).
 - **CHORE**: bump min Dart SDK constraint to 2.12.0 (#5430).
 - **CHORE**: merge all analysis_options.yaml into one (#5329).

## 4.0.0

 - Graduate package to a stable release. See pre-releases prior to this version for changelog entries.

## 4.0.0-1.0.nullsafety.1

 - **REFACTOR**: pubspec & dependency updates (#4932).

## 4.0.0-1.0.nullsafety.0

 - Bump "firebase_core_platform_interface" to `4.0.0-1.0.nullsafety.0`.

## 4.0.0-nullsafety.0

Major bump for the null-safety version to respect the versioning convention.

## 3.0.2-nullsafety.0

 - **REFACTOR**: Migrate to non-nullable types (#4656).

## 3.0.1

 - **DOCS**: installation links updated (#4479).

## 3.0.0

> Note: This release has breaking changes.

 - **BREAKING** **REFACTOR**: remove all currently deprecated APIs.

## 2.1.0

 - **FEAT**: add FirebaseException.stackTrace support (#4095).
 - **CHORE**: promote to stable version.

## 2.0.0

* DEPRECATED: `FirebaseApp.configure` method is now deprecated in favor of the `Firebase.initializeApp` method.
* DEPRECATED: `FirebaseApp.allApps` method is now deprecated in favor of the `Firebase.apps` property.
  * Previously, `allApps` was asynchronous where it is now synchronous.
* DEPRECATED: `FirebaseApp.appNamed` method is now deprecated in favor of the `Firebase.app` method.
* BREAKING: `FirebaseApp.options` getter is now synchronous.

* `FirebaseOptions` has been reworked to better match web property names:
  * DEPRECATED: `googleAppID` is now deprecated in favor of `appId`.
  * DEPRECATED: `projectID` is now deprecated in favor of `projectId`.
  * DEPRECATED: `bundleID` is now deprecated in favor of `bundleId`.
  * DEPRECATED: `clientID` is now deprecated in favor of `androidClientId`.
  * DEPRECATED: `trackingID` is now deprecated in favor of `trackingId`.
  * DEPRECATED: `gcmSenderID` is now deprecated in favor of `messagingSenderId`.
  * Added support for `authDomain`.
  * Added support for `trackingId`.
  * Required properties are now `apiKey`, `appId`, `messagingSenderId` & `projectId`.

* Added support for deleting Firebase app instances via the `delete` method on `FirebaseApp`.
* Added support for returning consistent error messages from `firebase-dart` plugin.
  * Any FlutterFire related errors now throw a `FirebaseException`.
* Added a `FirebaseException` class to handle all FlutterFire related errors.
  * Matching the web sdk, the exception returns a formatted "[plugin/code] message" message when thrown.
* Added support for `setAutomaticDataCollectionEnabled` & `isAutomaticDataCollectionEnabled` on a `FirebaseApp` instance.
* Added support for `setAutomaticResourceManagementEnabled` on a `FirebaseApp` instance.

## 1.0.5

* Update lower bound of dart dependency to 2.0.0.

## 1.0.4

* Migrate to package:plugin_platform_interface.

## 1.0.3

* Make the pedantic dev_dependency explicit.

## 1.0.2

- Remove the deprecated `author:` field from pubspec.yaml

## 1.0.1

- Switch away from quiver_hashcode.

## 1.0.0

- Initial open-source release.







 
