You're viewing the legacy docs. They are deprecated as of May 18, 2016.
These docs are for version 2.5.2 and below of the Java SDK. Go to our current docs, or see our Android migration guide.

Official Code Releases @firebaserelease

Android Changelog

Android Client

Mar 15, 2016 - Version 2.5.2 (Android) (JVM)
fixed Fixed regression in 2.5.1 that accidentally broke compatibility with API Level < 21.
fixed Fixed an issue where certain auth tokens were not persisted across app restarts.
Feb 20, 2016 - Version 2.5.1 (Android) (JVM)
fixed Fixed potential memory leak of ScheduledFutureTask objects.
fixed Fixed slow performance when attaching a single listener to many different locations.
fixed Fixed a NullPointerException crash in com.firebase.client.core.CompoundHash.
fixed Made a potential fix for "endTransaction called when there is no existing transaction" internal error.
Dec 15, 2015 - Version 2.5.0 (Android) (JVM)
feature Resynchronizing data after a reconnect or an app restart (with persistence enabled) has been optimized to use significantly less bandwidth.
Nov 18, 2015 - Version 2.4.1 (Android) (JVM)
fixed Fixed an issue that could cause a "listen() called twice for the same QuerySpec." internal error.
fixed Fixed a race condition where an event listener could be called immediately after it was removed.
Sep 24, 2015 - Version 2.4.0 (Android) (JVM)
feature updateChildren() now supports deep paths in addition to child keys.
feature orderByChild() now supports deep paths in addition to child keys.
feature Experimental support for Google App Engine.
changed Improved performance for initial connection to Firebase.
changed Improved performance for writes (set() or updateChildren()) especially when writing locations deep under an event listener.
fixed Fixed an edge case leading to cache inconsistencies (related to certain combinations of queries and deep updateChildren() calls).
fixed Fixed a leak of AuthResultHandler.
fixed Fixed a NullPointerException on keepSynced() at the root.
fixed Fixed a crash caused by "duplicate" listens.
Jun 24, 2015 - Version 2.3.1 (Android) (JVM)
fixed Fixed issue with disk persistence where updateChildren() writes were not always successfully written to the server after app restart.
fixed Fixed issue with disk persistence where queries with null endpoints (e.g. startAt(null) or startAt(null, "key")) would cause a crash on next app start.
fixed Fixed issue where a runTransaction() call could incorrectly fail with a "The transaction had too many retries" error if the default charset was not UTF-8.
May 29, 2015 - Version 2.3.0 (Android) (JVM)
feature Offline disk persistence.
feature Presyncing data with keepSynced.
changed Internal Firebase bugs will throw an exception.
May 5, 2015 - Version 2.2.4 (Android) (JVM)
fixed Gracefully handle when a transaction handler returns null.
fixed Fixed an issue where offline persistence loaded more data from disk than necessary in certain cases.
changed Improved logging for failed operations (e.g. due to permission denied errors).
Mar 20, 2015 - Version 2.2.3 (Android) (JVM)
fixed Fixed a bug where writes could overwrite older writes in offline mode.
changed Additional client side verification for invalid data.
Mar 18, 2015 - Version 2.2.2 (Android) (JVM)
changed Added better client-side validation for data written to Firebase.
changed Removed unused and obsolete interface PersistentStorage.
fixed Fixed a race condition that could cause a NullPointerException when first initializing Firebase from multiple threads.
fixed addListenerForSingleValueEvent now logs a warning if the query relies on a missing index.
Feb 23, 2015 - Version 2.2.1 (Android) (JVM)
fixed Fixed 'NullPointerException' thrown with enabled persistence and listeners at the root.
fixed Fixed internal assertion that was being hit with priorities on node removal.
Feb 13, 2015 - Version 2.2.0 (Android) (JVM)
feature Added Query.orderByValue() for ordering by value.
feature Introduced beta for offline disk persistence (disabled by default).
fixed Fixed HttpClient version warnings on Android.
fixed Fixed an edge case where ChildAdded events could be delayed for local writes.
fixed Fixed a bug where an internal assertion was hit.
fixed Fixed a bug where events for server values were not raised after being acknowledged by the server.
Jan 28, 2015 - Version 2.1.2 (Android) (JVM)
fixed Fixed a bug causing the DataSnapshots returned from getChildren() to use an incorrect ordering.
fixed Fixed a bug that could cause ANRs on Android on reconnects.
Jan 12, 2015 - Version 2.1.1 (Android) (JVM)
fixed Fixed a bug that prevented authentication methods working on Android.
fixed Fixed two bugs that caused an internal assertion to be hit in rare cases when using updateChildren().
Jan 6, 2015 - Version 2.1.0 (Android) (JVM)
feature Added Firebase.changeEmail() to enable updating a user's email.
changed Exposed created user ID via Firebase.ValueResultHandler passed to Firebase.createUser().
changed Parameter types for startAt() / endAt() / equalsTo() are verified when using orderByPriority().
fixed Improved performance for large queries with rapid updates.
fixed Fixed a bug where priorities were passed in on value events for queries.
fixed Fixed edge cases with temporarily inconsistent views.
fixed Fixed order in which writes are sent to server after reconnecting.
Dec 4, 2014 - Version 2.0.3 (Android) (JVM)
fixed Fixed a bug that prevented event updates in some situations after coming back online.
fixed Fixed a bug that prevented event updates in rare occasions where clients would overwrite data with near identical copies.
Nov 25, 2014 - Version 2.0.2 (Android) (JVM)
feature Added exists() method to DataSnapshot.
fixed Fixed 'NullPointerException' that occurred after token expired and app is restarted.
fixed Missing auth state events are now fired if token expires while app is offline (after coming back online).
Nov 12, 2014 - Version 2.0.1 (Android) (JVM)
fixed Fixed issue with dropped connections when local charset was not set to UTF-8.
fixed Fixed several issues that caused NullPointerExceptions.
fixed Fixed issue where snapshots were wrapped in keys after transactions.
fixed Fixed bug with incomplete data that could occur with onDisconnect().
feature Added parameter validation for authentication methods.
feature Added toString() method to MutableData and DataSnapshot.
deprecated Deprecated parent in MutableData.
Nov 4, 2014 - Version 2.0.0 (Android) (JVM)
feature Added Query.orderByChild() for ordering by arbitrary child attributes.
feature Added Query.orderByKey() and Query.orderByPriority() to explicitly set sort order.
feature Added Query.equalTo() for exact-match filtering using arbitrary child attributes.
feature Added Query.limitToFirst() and Query.limitToLast() to explicitly set limit direction.
feature Improved performance of existing query functionality.
feature Booleans are now allowed as query values.
changed Changes in priority now raise a ChildChanged event in addition to a ChildMoved event.
changed Renamed Firebase.getName() to Firebase.getKey().
changed Renamed DataSnapshot.getName() to DataSnapshot.getKey().
changed Renamed MutableData.getName() to MutableData.getKey().
deprecated Deprecated Query.limit() in favor of Query.limitToFirst() or Query.limitToLast().
fixed ServerValue.TIMESTAMP now works properly in transactions.
fixed Transaction callbacks now always return the snapshot from the specific transaction.
fixed Fixed transactions bug when running on cached data.
fixed Fixed some cases where onChildAdded events were raised with only partially-complete data.
Oct 4, 2014 - Version 1.1.1 (Android) (JVM)
fixed Fixed bug where authentication would not work on older Android devices.
fixed Fixed bug for hanging authentication connections on some Android devices.
fixed Fixed bug where AuthResultHandler received an preemption error after trying a new authentication attempt.
Oct 3, 2014 - Version 1.1.0 (Android) (JVM)
changed Firebase delegated authentication (previously Firebase Simple Login) is now integrated into the core Firebase library.
feature Added automatic session persistence for all authentication methods.
feature Added a synchronous accessor for authentication state: ref.getAuth().
feature Added a standardized authData returned for all authentication providers.
Sep 4, 2014 - Version 1.0.18
fixed Removed dependence on Java 7; will work once again with Java 6.
Aug 19, 2014 - Version 1.0.17
fixed Fixed bug where snapshot was null if multiple listeners where attached.
fixed Fixed bug where snapshots were mistakenly converted to arrays.
fixed Many performance improvements.
Jul 16, 2014 - Version 1.0.16
feature Added logging for socket errors.
feature Catch Throwables from user code during transactions.
fixed Fixed bug iterating DataSnapshots that have no children.
Jun 3, 2014 - Version 1.0.15
fixed Firebase SDK uses daemon threads; will no longer prevent a process from exiting.
changed Calling goOffline() with no outstanding listeners will allow Firebase threads to timeout.
May 22, 2014 - Version 1.0.14
fixed Fixed numerical/lexicographical key ordering issue.
Apr 30, 2014 - Version 1.0.13
changed Minor bump of version for underlying websocket library.
Feb 4, 2014 - Version 1.0.12
fixed Fixed transaction bug.
Nov 13, 2013 - Version 1.0.11
fixed Fixed onDisconnect() priority bug.
Nov 8, 2013 - Version 1.0.10
fixed Fixed authentication bug.
Oct 15, 2013 - Version 1.0.9
feature Added static methods to optionally control client connection.
Oct 15, 2013 - Version 1.0.8
feature Added Firebase reference to CompletionListener callback.
important UPGRADE NOTES: To upgrade, update all onComplete() method signatures to include a second, Firebase argument.
Oct 1, 2013 - Version 1.0.7
fixed Fixed edge case with key sorting.
changed Bumped version of Tubesock dependency.
Sep 10, 2013 - Version 1.0.6
feature Implemented delta-sync optimization.
fixed Fixed issue with transactions on data with numeric priorities.
Sep 5, 2013 - Version 1.0.5
fixed Fixed concurrent modification exception that occurred in some transactions.
Sep 4, 2013 - Version 1.0.4
feature Added support for object mapping to
Aug 31, 2013 - Version 1.0.3
changed Changed websocket library over to TubeSock.
fixed Fixed cache clearing issue.
changed Bumped Jackson to v2.2.2.
changed Changed sort order for keys.
changed Changed priority arguments to be of type Object.
fixed Fixed bug in server-time estimation.
Jul 16, 2013 - Version 1.0.2
fixed Fixed more SSL issues with older devices (Android < 3.0).
fixed Fixed bug with setting large values.
Jul 4, 2013 - Version 1.0.1
fixed Fixed SSL socket buffer size.
Jul 3, 2013 - Version 1.0.0
feature Initial release.

Simple Login Client

Oct, 2014
deprecated Simple Login has been deprecated. Please switch to the authentication features that have been integrated into the main Firebase library.
Jul 17, 2014 - Version 1.4.2
fixed Minor bug fixes.
May 26, 2014 - Version 1.4.1
fixed Fixed a bug where changePassword() failed to surface an error when invoked with an incorrect password.
Apr 18, 2014 - Version 1.4.0
feature Added support for isTemporaryPassword flag when logging in using the email / password provider (GitHub issue #17 -
changed Renamed User and Error classes to FirebaseSimpleLoginUser and FirebaseSimpleLoginError, respectively.
Mar 7, 2014 - Version 1.3.0
feature Added support for Google / Google+ authentication (GitHub issue #1 -
feature Added uid field on FAUser object.
Feb 4, 2014 - Version 1.2.1
feature Added options argument to enable security debug mode.
Jan 16, 2014 - Version 1.2.0
feature Added support for password resets (see
Jan 9, 2014 - Version 1.1.2
changed Updated Twitter Token login arguments to require user ID, OAuth token, and OAuth token secret.
Nov 8, 2013 - Version 1.1.1
fixed Fixed Simple Login logged-out response in JVM client.
Sep 26, 2013 - Version 1.1.0
feature Added support for anonymous authentication provider.