com.google.android.gms.common.api.GoogleApiClient |
The main entry point for Google Play services integration.
GoogleApiClient is used with a variety of static methods. Some of these methods require that GoogleApiClient be connected, some will queue up calls before GoogleApiClient is connected; check the specific API documentation to determine whether you need to be connected.
Before any operation is executed, the GoogleApiClient must be connected using the
connect()
method. The client is not considered connected until the
onConnected(Bundle)
callback has been called.
When your app is done using this client, call disconnect()
, even if the async result from
connect()
has not yet been delivered.
You should instantiate a client object in your Activity's onCreate(Bundle)
method and
then call connect()
in onStart()
and disconnect()
in
onStop()
, regardless of the state.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
GoogleApiClient.Builder |
Builder to configure a GoogleApiClient .
|
||||||||||
GoogleApiClient.ConnectionCallbacks | Provides callbacks that are called when the client is connected or disconnected from the service. | ||||||||||
GoogleApiClient.OnConnectionFailedListener | Provides callbacks for scenarios that result in a failed attempt to connect the client to the service. | ||||||||||
GoogleApiClient.ServerAuthCodeCallbacks | Provides callbacks to facilitate the server auth code retrieval and eliminates clients from manipulating background threads to do network communications with their own server. |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Connects the client to Google Play services.
| |||||||||||
Connects the client to Google Play services.
| |||||||||||
Clears the account selected by the user and reconnects the client asking the user to pick an
account again if
useDefaultAccount() was set.
| |||||||||||
Connects the client to Google Play services.
| |||||||||||
Closes the connection to Google Play services.
| |||||||||||
Prints the GoogleApiClient's state into the given stream.
| |||||||||||
Returns the
ConnectionResult for the GoogleApiClient's connection to the
specified API.
| |||||||||||
Returns a unique session id for this GoogleApiClient instance, which should remain the same
even if the current connection state changes.
| |||||||||||
Returns whether or not this GoogleApiClient has the specified API in a connected state.
| |||||||||||
Checks if the client is currently connected to the service, so that requests to other methods
will succeed.
| |||||||||||
Checks if the client is attempting to connect to the service.
| |||||||||||
Returns true if the specified listener is currently registered to
receive connection events.
| |||||||||||
Returns true if the specified listener is currently registered to
receive connection failed events.
| |||||||||||
Closes the current connection to Google Play services and creates a new connection.
| |||||||||||
Registers a listener to receive connection events from this
GoogleApiClient .
| |||||||||||
Registers a listener to receive connection failed events from this
GoogleApiClient .
| |||||||||||
Disconnects the client and stops automatic lifecycle management.
| |||||||||||
Removes a connection listener from this
GoogleApiClient .
| |||||||||||
Removes a connection failed listener from the
GoogleApiClient .
|
Connects the client to Google Play services. Blocks until the connection either succeeds or fails, or the timeout is reached.
If the client is already connected, this methods returns immediately. If the client is
already connecting (for example due to a prior call to connect()
), this method
blocks until the existing connection attempt completes or the timeout is reached. If a
prior connection attempt has already failed, then a new connection attempt is started.
timeout | the maximum time to wait |
---|---|
unit | the time unit of the timeout argument |
Connects the client to Google Play services. Blocks until the connection either succeeds or fails. This is not allowed on the UI thread.
If the client is already connected, this methods returns immediately. If the client is
already connecting (for example due to a prior call to connect()
), this method
blocks until the existing connection attempt completes. If a prior connection attempt has
already failed, then a new connection attempt is started.
Clears the account selected by the user and reconnects the client asking the user to pick an
account again if useDefaultAccount()
was set.
GoogleApiClient.ConnectionCallbacks
can be used.
Connects the client to Google Play services. This method returns immediately, and connects to
the service in the background. If the connection is successful,
onConnected(Bundle)
is called and enqueued items are executed. On a
failure, onConnectionFailed(ConnectionResult)
is called.
If the client is already connected or connecting, this method does nothing.
Closes the connection to Google Play services. No calls can be made using this client after
calling this method. Any method calls that haven't executed yet will be canceled.
That is onResult(Result)
won't be called, if connection to the service
hasn't been established yet all calls already made will be canceled.
Prints the GoogleApiClient's state into the given stream.
prefix | Desired prefix to prepend at each line of output. |
---|---|
fd | The raw file descriptor that the dump is being sent to. |
writer | The PrintWriter to use for writing the dump. |
args | Additional arguments to the dump request. |
Returns the ConnectionResult
for the GoogleApiClient's connection to the
specified API. This method must only be called after connect()
has
been called and before disconnect()
is called.
This method may return stale results if the GoogleApiClient is reconnecting due to a lost
network connection. It is guaranteed to return the most recent ConnectionResult from
attempting to connect the given API, but will throw an IllegalStateException if called before
calling connect or after calling disconnect. This method can be used to easily determine why
an API failed to connect if it was not available. To determine whether a given API is
currently connected (without potential stale results) see
hasConnectedApi(Api>)
.
api | The Api to retrieve the ConnectionResult of. Passing an API that was not
registered with the GoogleApiClient results in an IllegalArgumentException.
|
---|
Returns a unique session id for this GoogleApiClient instance, which should remain the same even if the current connection state changes.
Returns whether or not this GoogleApiClient has the specified API in a connected state.
api | The Api to test the connection of.
|
---|
Checks if the client is currently connected to the service, so that requests to other methods will succeed. Applications should guard client actions caused by the user with a call to this method.
Checks if the client is attempting to connect to the service.
Returns true if the specified listener is currently registered to receive connection events.
listener | The listener to check for. |
---|
Returns true if the specified listener is currently registered to receive connection failed events.
listener | The listener to check for. |
---|
Closes the current connection to Google Play services and creates a new connection.
This method closes the current connection then returns immediately and reconnects to the service in the background.
After calling this method, your application will receive
onConnected(Bundle)
if the connection is successful, or
onConnectionFailed(ConnectionResult)
if the connection failed.
Registers a listener to receive connection events from this GoogleApiClient
.
If the service is already connected, the listener's onConnected(Bundle)
method will be called immediately. Applications should balance calls to this method with
calls to unregisterConnectionCallbacks(ConnectionCallbacks)
to avoid leaking
resources.
If the specified listener is already registered to receive connection events, this
method will not add a duplicate entry for the same listener, but will
still call the listener's onConnected(Bundle)
method if currently
connected.
Note that the order of messages received here may not be stable, so clients should not rely on the order that multiple listeners receive events in.
listener | the listener where the results of the asynchronous connect() call are
delivered.
|
---|
Registers a listener to receive connection failed events from this
GoogleApiClient
. Unlike registerConnectionCallbacks(GoogleApiClient.ConnectionCallbacks)
, if the service
is not already connected, the listener's
onConnectionFailed(ConnectionResult)
method will not be called immediately.
Applications should balance calls to this method with calls to
unregisterConnectionFailedListener(OnConnectionFailedListener)
to avoid leaking
resources.
If the specified listener is already registered to receive connection failed events, this method will not add a duplicate entry for the same listener.
Note that the order of messages received here may not be stable, so clients should not rely on the order that multiple listeners receive events in.
listener | the listener where the results of the asynchronous connect() call are
delivered.
|
---|
Disconnects the client and stops automatic lifecycle management. Use this before creating a new client (which might be necessary when switching accounts, changing the set of used APIs etc.).
This method must be called from the main thread.lifecycleActivity | the activity managing the client's lifecycle. |
---|
IllegalStateException | if called from outside of the main thread. |
---|
Removes a connection listener from this GoogleApiClient
. Note that removing
a listener does not generate any callbacks.
If the specified listener is not currently registered to receive connection events, this method will have no effect.
listener | the listener to unregister. |
---|
Removes a connection failed listener from the GoogleApiClient
.
Note that removing a listener does not generate any callbacks.
If the specified listener is not currently registered to receive connection failed events, this method will have no effect.
listener | the listener to unregister. |
---|