public static final class

GoogleApiClient.Builder

extends Object
java.lang.Object
   ↳ com.google.android.gms.common.api.GoogleApiClient.Builder

Class Overview

Builder to configure a GoogleApiClient.

Example:

 GoogleApiClient client = new GoogleApiClient.Builder(this)
         .addApi(Plus.API)
         .addScope(Plus.SCOPE_PLUS_LOGIN)
         .setAccountName("users.account.name@gmail.com")
         .build();
 client.connect();
 

Summary

Public Constructors
GoogleApiClient.Builder(Context context)
Builder to help construct the GoogleApiClient object.
GoogleApiClient.Builder(Context context, GoogleApiClient.ConnectionCallbacks connectedListener, GoogleApiClient.OnConnectionFailedListener connectionFailedListener)
Builder to help construct the GoogleApiClient object.
Public Methods
<O extends Api.ApiOptions.HasOptions> GoogleApiClient.Builder addApi(Api<O> api, O options)
Specify which Apis are requested by your app.
GoogleApiClient.Builder addApi(Api<? extends Api.ApiOptions.NotRequiredOptions> api)
Specify which Apis are requested by your app.
<O extends Api.ApiOptions.HasOptions> GoogleApiClient.Builder addApiIfAvailable(Api<O> api, O options, Scope... scopes)
Specify which Apis should attempt to connect, but are not strictly required for your app.
GoogleApiClient.Builder addApiIfAvailable(Api<? extends Api.ApiOptions.NotRequiredOptions> api, Scope... scopes)
Specify which Apis should attempt to connect, but are not strictly required for your app.
GoogleApiClient.Builder addConnectionCallbacks(GoogleApiClient.ConnectionCallbacks listener)
Registers a listener to receive connection events from this GoogleApiClient.
GoogleApiClient.Builder addOnConnectionFailedListener(GoogleApiClient.OnConnectionFailedListener listener)
Adds a listener to register to receive connection failed events from this GoogleApiClient.
GoogleApiClient.Builder addScope(Scope scope)
Specify the OAuth 2.0 scopes requested by your app.
GoogleApiClient build()
Builds a new GoogleApiClient object for communicating with the Google APIs.
GoogleApiClient.Builder enableAutoManage(FragmentActivity fragmentActivity, int clientId, GoogleApiClient.OnConnectionFailedListener unresolvedConnectionFailedListener)
Enables automatic lifecycle management in a support library FragmentActivity that connects the client in onStart() and disconnects it in onStop().
GoogleApiClient.Builder requestServerAuthCode(String serverClientId, GoogleApiClient.ServerAuthCodeCallbacks callbacks)
Specifies requesting of a server auth code for third party web server as part of client connect() flow.
GoogleApiClient.Builder setAccountName(String accountName)
Specify an account name on the device that should be used.
GoogleApiClient.Builder setGravityForPopups(int gravityForPopups)
Specifies the part of the screen at which games service popups (for example, "welcome back" or "achievement unlocked" popups) will be displayed using gravity.
GoogleApiClient.Builder setHandler(Handler handler)
Sets a Handler to indicate which thread to use when invoking callbacks.
GoogleApiClient.Builder setViewForPopups(View viewForPopups)
Sets the View to use as a content view for popups.
GoogleApiClient.Builder useDefaultAccount()
Specify that the default account should be used when connecting to services.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public GoogleApiClient.Builder (Context context)

Builder to help construct the GoogleApiClient object.

Parameters
context The context to use for the connection.

public GoogleApiClient.Builder (Context context, GoogleApiClient.ConnectionCallbacks connectedListener, GoogleApiClient.OnConnectionFailedListener connectionFailedListener)

Builder to help construct the GoogleApiClient object.

Parameters
context The context to use for the connection.
connectedListener The listener where the results of the asynchronous connect() call are delivered.
connectionFailedListener The listener which will be notified if the connection attempt fails.

Public Methods

public GoogleApiClient.Builder addApi (Api<O> api, O options)

Specify which Apis are requested by your app. See Api for more information.

Parameters
api The Api requested by your app.
options Any additional parameters required for the specific AP
See Also

public GoogleApiClient.Builder addApi (Api<? extends Api.ApiOptions.NotRequiredOptions> api)

Specify which Apis are requested by your app. See Api for more information.

Parameters
api The Api requested by your app.
See Also

public GoogleApiClient.Builder addApiIfAvailable (Api<O> api, O options, Scope... scopes)

Specify which Apis should attempt to connect, but are not strictly required for your app. The GoogleApiClient will try to connect to these Apis, but will not necessarily fail if there are only errors when connecting to an unavailable Api added with this method. See Api for more information.

Parameters
api The Api requested by your app.
scopes Scopes required by this API.
See Also

public GoogleApiClient.Builder addApiIfAvailable (Api<? extends Api.ApiOptions.NotRequiredOptions> api, Scope... scopes)

Specify which Apis should attempt to connect, but are not strictly required for your app. The GoogleApiClient will try to connect to these Apis, but will not necessarily fail if there are only errors when connecting to an unavailable Api added with this method. See Api for more information.

Parameters
api The Api requested by your app.
scopes Scopes required by this API.
See Also

public GoogleApiClient.Builder addConnectionCallbacks (GoogleApiClient.ConnectionCallbacks listener)

Registers a listener to receive connection events from this GoogleApiClient. 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.

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.

Parameters
listener the listener where the results of the asynchronous connect() call are delivered.

public GoogleApiClient.Builder addOnConnectionFailedListener (GoogleApiClient.OnConnectionFailedListener listener)

Adds a listener to register to receive connection failed events from this GoogleApiClient. 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.

Parameters
listener the listener where the results of the asynchronous connect() call are delivered.

public GoogleApiClient.Builder addScope (Scope scope)

Specify the OAuth 2.0 scopes requested by your app. See Scopes for more information.

Parameters
scope The OAuth 2.0 scopes requested by your app.
See Also

public GoogleApiClient build ()

Builds a new GoogleApiClient object for communicating with the Google APIs.

Returns

public GoogleApiClient.Builder enableAutoManage (FragmentActivity fragmentActivity, int clientId, GoogleApiClient.OnConnectionFailedListener unresolvedConnectionFailedListener)

Enables automatic lifecycle management in a support library FragmentActivity that connects the client in onStart() and disconnects it in onStop().

It handles user recoverable errors appropriately and calls if the ConnectionResult has no resolution. This eliminates most of the boiler plate associated with using GoogleApiClient.

When using this option, build() must be called from the main thread.

Parameters
fragmentActivity The activity that uses the GoogleApiClient. For lifecycle management to work correctly the activity must call its parent's onActivityResult(int, int, android.content.Intent).
clientId A non-negative identifier for this client. At any given time, only one auto-managed client is allowed per id. To reuse an id you must first call stopAutoManage(FragmentActivity) on the previous client.
unresolvedConnectionFailedListener Called if the connection failed and there was no resolution or the user chose not to complete the provided resolution. If this listener is called, the client will no longer be auto-managed, and a new instance must be built. In the event that the user chooses not to complete a resolution, the ConnectionResult will have a status code of CANCELED.
Throws
NullPointerException if fragmentActivity is null
IllegalArgumentException if clientId is negative.
IllegalStateException if clientId is already being auto-managed.

public GoogleApiClient.Builder requestServerAuthCode (String serverClientId, GoogleApiClient.ServerAuthCodeCallbacks callbacks)

Specifies requesting of a server auth code for third party web server as part of client connect() flow. This is useful for applications which have a web server component that need to access a Google API after the user has left the (Android) application.

If server auth code is requested, you will be given the server auth code in onUploadServerAuthCode(String, String) callback.

Parameters
serverClientId the 3rd party server client ID for offline access.
callbacks the GoogleApiClient.ServerAuthCodeCallbacks delegate which will be called back when communicating back to 3rd party web server is needed.

public GoogleApiClient.Builder setAccountName (String accountName)

Specify an account name on the device that should be used. If this is never called, the client will use the current default account for Google Play services for this application.

Parameters
accountName The account name on the device that should be used by GoogleApiClient.

public GoogleApiClient.Builder setGravityForPopups (int gravityForPopups)

Specifies the part of the screen at which games service popups (for example, "welcome back" or "achievement unlocked" popups) will be displayed using gravity.

Default value is TOP|CENTER_HORIZONTAL.

Parameters
gravityForPopups The gravity which controls the placement of games service popups.

public GoogleApiClient.Builder setHandler (Handler handler)

Sets a Handler to indicate which thread to use when invoking callbacks. Will not be used directly to handle callbacks. If this is not called then the application's main thread will be used.

public GoogleApiClient.Builder setViewForPopups (View viewForPopups)

Sets the View to use as a content view for popups.

Parameters
viewForPopups The view to use as a content view for popups. View cannot be null.

public GoogleApiClient.Builder useDefaultAccount ()

Specify that the default account should be used when connecting to services.