Firebase Unity SDK Release Notes

To see release notes for the Firebase console and for other Firebase platforms and related SDKs, see the Firebase Release Notes.

To install this SDK, see Add Firebase to your Unity Project.

Version 4.2.1 - Oct 20, 2017

  • fixed (Android) Fixed Android resolution when a project path contains apostrophes.
  • fixed (iOS) Increased speed of iOS resolver dependency loading.
  • changed (Android) Removed legacy resolution method from Android Resolver. It is now only possible to resolve dependencies using Gradle (default), or optionally "Prebuild With Gradle".
  • fixed (Android) Fixed Android Resolution issues with OpenJDK by updating the Gradle wrapper to 4.2.1.
  • fixed (Android) Android resolution now also uses gradle.properties to pass parameters to Gradle in an attempt to workaround problems with command line argument parsing on Windows 10.
  • fixed Fixed some invalid calls to Unity APIs from threads, when using .NET 4.x which is added in Unity 2017.

Realtime Database

  • fixed Fixed hang when Time.timeScale is 0 in Unity 2017.

Storage

  • fixed Fixed hang when Time.timeScale is 0 in Unity 2017.
  • fixed Fixed file download in Unity 2017.2.

Version 4.2.0 - Oct 2, 2017

  • fixed (iOS) Fixed incorrect processing of framework modulemap files which resulted in the wrong link flags being generated when Cocoapod project integration is enabled.
  • fixed (Android) Added support for Google Play services dependency resolution when including multiple plugins (e.g AdMob, Google Play Games services) that require different versions of Google Play services.
  • fixed (Android) Fixed Android dependency resolution when local project paths contain spaces.
  • fixed (Android) Fixed race condition in Android Resolver which could cause a hang when running auto-resolution.
  • fixed (Android) Forced Android Gradle resolution process to not use the Gradle daemon to improve reliability of the process.
  • fixed (Android) Added a check for at least JDK 8 when running Android dependency resolution.
  • fixed Fixed MonoPInvokeCallbackAttribute incorrectly being added to the root namespace causing incompatibility with plugins like slua.

Analytics

  • fixed Fixed bug which prevented the user ID and user properties being cleared.

Authentication

  • feature (iOS) Phone authentication no longer requires push notifications. When push notifications aren't available, reCAPTCHA verification is used instead.
  • fixed Added more specific error codes for failed operations.

Realtime Database

  • fixed Fixed issue where user authentication tokens are ignored if the application uses the database API before initializing authentication.

FCM

  • feature Messages sent to users can now contain a link URL.
  • fixed (Android) Fixed a bug which prevented the message ID field.

Version 4.1.0 - Aug 23, 2017

  • changed Updated to iOS 4.1.0 SDK, Android 11.2.0 SDK and C++ 4.1.0 SDK.
  • fixed (iOS) Fixed iOS build with Cocoapod Project integration enabled. This affected all iOS builds when using Unity 5.5 or below or when using Unity Cloud Build.
  • fixed (iOS) Fixed issue which prevented the use of Unity Cloud Build with Unity 5.6 and above. Unity Cloud Build does not open generated Xcode workspaces so we force Cocoapod Project integration in the Unity Cloud Build environment.
  • fixed (iOS) Fixed spurious errors on initialization of FirebaseApp.

Authentication

  • changed (Android) An exception is now thrown if you call GetCredential without creating an Auth instance.

FCM

  • fixed (Android) Fixed a bug resulting in FirebaseMessage objects not having their MessageType field populated.
  • fixed (iOS) Fixed a race condition if a message is received before Firebase Cloud Messaging is initialized.
  • fixed (iOS) Fixed a bug detecting whether the notification was opened if the app was running in the background.

Remote Config

  • fixed When listing keys, the list now includes keys with defaults set, even if they were not present in the fetched config.

Version 4.0.3 - Aug 1, 2017

  • feature Added support for .NET 4.x in the System.Task implementation used by the SDK. The VersionHandler editor plugin is now used to switch Task implementations based upon the selected .NET version.
  • fixed Fixed root cert installation failure if Firebase is initialized after other network operations are performed by an application.
  • fixed Improved native shared library name mangling when targeting Linux.
  • fixed (iOS) Fixed an issue which resulted in custom options not being applied to FirebaseApp instances.
  • fixed (iOS) Fixed a bug which caused method implementation look ups to fail when other iOS SDKs rename the selectors of swizzled methods. This could result in a hang on startup when using some iOS SDKs.

Dynamic Links

  • fixed (Android) Fixed task completion if short link creation fails.

Realtime Database

  • fixed Fixed an issue where a list larger than approximately 1kb will fail to synchronize changes correctly.
  • fixed Fixed a bug that caused database connections to fail when using the .NET 4.x framework in Unity 2017 on OSX.

FCM

  • fixed (iOS) Fixed message handling when messages they are received via the direct channel to the FCM backend (i.e not via APNS).

Version 4.0.2 - Jul 7, 2017

  • fixed (Android) Fixed native libraries not being included in built APKs when using the internal build system in Unity 2017.

Analytics

  • fixed (Android) Fixed an issue which caused Analytics to be included in builds without the Analytics plugin.
  • fixed Fixed SetCurrentScreen to work from any thread.

Authentication

  • fixed (iOS) Fixed an issue which incorrectly invalidated the current user if credential linking fails.

Dynamic Links

  • fixed Fixed an issue which caused an app to sometimes crash or not receive a Dynamic Link if it's opened when the app is installed and not running.

FCM

  • fixed (Android) Fixed the AndroidManifest.xml to work with version 25 and above of the Android SDK tools and support library.
  • fixed (iOS) Fixed a crash when no notification event is registered.
  • fixed Fixed token notification event occasionally being raised twice with the same token.

Version 4.0.1 - Jun 16, 2017

FCM

  • fixed (Android): Fixed crash when updating Google Play services in projects that include the FCM functionality.
  • fixed (iOS): Fixed an issue where library would crash on start up if there was no registration token.

Dynamic Links and Invites

  • fixed (iOS) Fixed an issue which caused an app to not receive a Dynamic Link if it's opened when the app is installed and not running.

Version 4.0.0 - Jun 9, 2017

  • fixed (Android) Fixed crash in some circumstances after resolving dependencies by updating Google Play services.
  • fixed (iOS) Added support for CocoaPod builds that use Xcode workspaces in Unity 5.6 and above.
  • fixed (iOS) Fixed CocoaPod version pinning which was broken in 3.0.3 causing the SDK to pull in the most recent Firebase iOS SDK rather than the correct version for the current Unity SDK release.

Authentication

  • feature Added support for phone number authentication.
  • feature Added the ability to retrieve user metadata.
  • changed Moved token notification to a separate token changed event.

Dynamic Links

  • feature Added a standalone plugin separate from Invites.

Invites

  • fixed (iOS) Fixed an issue in the analytics SDK's method swizzling which resulted in dynamic links / invites not being sent to the application.

FCM

  • fixed (Android) Fixed a regression introduced in 3.0.3 which caused a crash when opening up a notification when the app is running in the background.
  • fixed (iOS) Fixed interoperation with other users of local notifications.

Version 3.0.3 - May 11, 2017

Authentication

  • fixed Fixed a crash caused by a stale memory reference when a firebase::auth::Auth object is destroyed and then recreated for the same App object.
  • fixed Fixed a potential memory corruption when AuthStateListener is destroyed.
  • fixed (Editor) Fixed an occasional crash in the Unity editor when using authentication sign-in methods.

Version 3.0.2 - May 9, 2017

  • fixed (Android) Fixed an unhandled exception that occurs if FirebaseApp creation fails due to an out-of-date Google Play services version.
  • fixed (Android) Fixed a crash in the Google Play services updater that occurred when clicking outside of the dialog on Android 4.x devices.
  • fixed (Android Editor) Fixed referenced Android dependencies in the Maven plugin where the Project Object Model file (pom.xml) references a specific version using a range expression.
  • fixed (Android Editor) Fixed the resolution of Android dependencies when the bundle ID is modified.
  • fixed (iOS Editor) Improved compatibility with Cocoapods support in Unity 5.6, required to use the GoogleVR iOS SDK.

Authentication

  • fixed Fixed user being invalidated when linking credential fails.
  • fixed Fixed an occasional crash when events are fired. This could manifest in a crash when signing in.
  • changed Deprecated FirebaseUser.RefreshToken.

Realtime Database

  • fixed Fixed an issue which caused the application to manually refresh the auth token.

FCM

  • fixed (Android) Resolved an issue which caused an app to receive an empty message when a notification is received while the app is in the background and user then taps on the app icon rather than the notification.

Invites

  • fixed (iOS) Fixed an issue which resulted in the app delegate method application:openURL:sourceApplication:annotation: not being called when linking the invites library. This caused the Facebook SDK login flow to fail.

Version 3.0.1 - March 15, 2017

  • fixed (Android) Fixed Google Play Services checker on Android. Previously when Google Play Services was out of date, FirebaseApp.CheckDependencies() incorrectly returned DependencyStatus.Available.
  • changed (Android) Added check for auto-resolution being enabled in the Android Resolver editor plugin. If auto-resolution is disabled by the user or by another plugin (e.g Google Play Games), the user is warned about the configuration problem and given the opportunity to fix it.
  • fixed (Android) Fixed single architecture builds when using Gradle.
  • fixed (Android) Resolved an issue which caused the READ_PHONE_STATE permission to be requested.

Version 3.0.0 - February 27, 2017

  • changed Added link.xml files to allow byte stripping to be enabled.
  • fixed Fixed issues with Android builds when targeting a single ABI.
  • changed Added process of cleaning stale / moved files when upgrading to a newer version of the editor plugin.
  • changed Fixed minor issue in the editor plugin with the Firebase window not being repainted as Firebase configuration files are added to or removed from a project.
  • changed Bundle ID selection dialog for iOS and Android is now displayed when the project bundle ID doesn't match the Firebase configuration.
  • changed (iOS) Added automated CocoaPod tool installation and improved Pod tool detection when using RVM. This enables iOS projects to build with Unity Cloud Build.
  • changed (iOS) Added support for pods that reference static libraries.
  • changed (Android) Added experimental support for building with Proguard stripping enabled.
  • fixed (Android) Fixed Android package (AAR) synchronization when the project bundle ID is modified.
  • fixed (Android) Fixed clean up of stale AAR dependencies when users change Android SDK versions.
  • changed (Android) Jar Resolver now remembers—for the editor session—which AARs to keep when new AARs are available compared to what is included in a project.
  • changed (Android) Added support for projects that use Google Play Services at different versions.
  • changed Added fake—but valid—JWT in the Authentication stub used when building for the desktop.

Authentication

  • changed Added SetCurrentScreen() method.
  • fixed Fixed race condition when accessing user properties.

Realtime Database

  • fixed Resolved issue where large queries resulted in empty results.
  • fixed Fixed an issue which prevented saving boolean values.

Storage

  • fixed Fixed a bug which prevented download URLs from containing slashes.
  • fixed (iOS) Fixed a bug on iOS which caused networking to fail when the full .NET 2.0 compatibility level is used.

FCM

  • fixed (iOS) Fixed issue with initialization on iOS that caused problems with other SDKs.

Invites

  • fixed (iOS) Fixed issue with initialization on iOS that caused problems with other SDKs.

Version 1.1.2 - February 6, 2017

  • fixed Fixed a potential deadlock when running callbacks registered via Task.ContinueWith().

Authentication

  • fixed (Android) Fixed an error in Firebase.Auth.FirebaseUser.PhotoUrl.

FCM

  • fixed (iOS) Removed hard dependency on Xcode 8.
  • fixed (Android) Fixed an issue where the application would receive an empty message on startup.

Version 1.1.1 - January 18, 2017

  • fixed Fixed an issue in the editor plugin that caused an exception to be thrown when the project bundle ID didn't match a bundle ID in the Android configuration file (google-services.json).
  • fixed Fixed a bug in the editor plugin that caused a stack overflow when multiple iOS configuration files (GoogleServices-Info.plist) are present in a project.

Authentication

  • fixed (Android) Fixed an issue that caused a Task to never complete when signing in while a user is already signed in.
  • changed Renamed the Auth.UserProfile.ProtoUri property to Auth.UserProfile.ProtoUrl to be consistent with the other URL properties across the SDK.

FCM

  • fixed (iOS) Fixed an issue with method swizzling that caused some of the application's UIApplicationDelegate methods to not be called.

Invites

  • fixed (iOS) Fixed an issue with method swizzling that caused some of the application's UIApplicationDelegate methods to not be called.

Realtime Database

  • fixed Fixed an issue that prevented saving floating point values.

Storage

  • fixed The Storage plugin was using a Unity API that is only present in Unity 5.4. We have modified the component so that it is now backwards compatible with previous versions of Unity.

Version 1.1.0 - December 9th, 2016

  • changed The editor plugin now reads the Java SDK location from the Unity editor preferences.
  • changed The editor plugin now scans all google-services.json and GoogleService-Info.plist files selects the config file matching the project's bundle ID.
  • changed Error messages in the editor plugin now report more common configuration problems.
  • changed (Android) Improved the performance of AAR / JAR resolution when the Android config is selected and auto-resolution is enabled.
  • fixed Fixed a bug that caused event routing to fail when a Unity scene transition occurs.
  • fixed Fixed a build configuration problem that prevented builds in Visual Studio.
  • issue (Android) Proguard is not integrated into Android builds, but you can manually integrate the Proguard files included with the Unity SDK into Android app builds. These Proguard files are found in AAR files matching the following pattern in each Unity package: Firebase/m2repository/com/google/firebase/firebase-*-unity/*firebase-*.srcaar
  • issue (Android) Incompatible AARs are not resolved correctly when building for Android. This can require manual intervention when using multiple plugins. A workaround is documented on the AdMob Unity plugin issue tracker.

Storage

Analytics

  • fixed Fixed crash when logging arrays of parameters.

Authentication

  • changed Modified stub implementation so that all operations now succeed rather than raise exceptions.

Realtime Database

  • fixed Fixed an issue that caused null events to not be reported.
  • fixed Fixed an issue that caused unsubscription from complex queries to fail.
  • fixed Fixed an issue that caused service account authentication to fail in the editor.
  • fixed Added a link.xml rule to prevent Firebase.Database.Unity being stripped from iOS builds.

FCM

  • fixed Fixed an issue that prevented subscription to topics.
  • fixed (iOS) Fixed an issue that caused random hangs during initialization on iOS.
  • fixed (Android) Modified the AndroidManifest.xml so that the app icon is included on Android.
  • fixed (Android) Fixed an issue that caused an exception when receiving messages with empty payloads on Android.

Dynamic Links and Invites

  • changed Modified stub implementation so that all operations now succeed rather than raise exceptions.
  • fixed Fixed an issue that caused a crash when opening a link.
  • fixed (iOS) Fixed an issue that caused random hangs during initialization on iOS.

Version 1.0.1 - November 18th, 2016

  • fixed Fixed Realtime Database restricted access from the Unity Editor on Windows.
  • fixed (iOS) Fixed load and build errors when iOS support is not installed.
  • fixed (iOS) Fixed an issue that prevented the creation of multiple FirebaseApp instances and customization of the default instance.
  • fixed (iOS) Fixed an issue with pod tool discovery when the Ruby Gem binary directory is modified from the default location.
  • fixed (Android) Removed all dependencies on Python resource generation on Windows.
  • fixed (Android) Fixed problems when building with the IL2CPP scripting backend.

Version 1.0.0 - November 7th, 2016

This initial release of the Firebase Unity SDK includes support for Analytics, Authentication, Realtime Database, Invites, Dynamic Links and Remote Config. To get started, see Adding Firebase to your Unity Project.

  • issue Proguard is not integrated into Android builds, but you can manually integrate the Proguard files included with the Unity SDK into Android app builds. These Proguard files are found in AAR files matching the following pattern in each Unity package: Firebase/m2repository/com/google/firebase/firebase-*-unity/*firebase-*.srcaar

Send feedback about...

Need help? Visit our support page.