android - guides - play googleapis
GoogleApiClient onConnectionSuspended, ¿debería llamar a mGoogleApiClient.connect() nuevamente? (2)
Estoy usando GoogleApiClient en un servicio para solicitar actualizaciones de ubicaciones fusionadas. Todo funciona correctamente, pero a veces la conexión se suspende y se llama onConnectionSuspended.
@Override
public void onCreate() {
...
mGoogleApiClient = new GoogleApiClient.Builder(this) // this is a Context
.addApi(LocationServices.API)
.addConnectionCallbacks(this) // this is a [GoogleApiClient.ConnectionCallbacks][1]
.addOnConnectionFailedListener(this) //
.build();
mGoogleApiClient.connect();
...
}
@Override
public void onConnectionSuspended(int arg0) {
// what should i do here ? should i call mGoogleApiClient.connect() again ? ?
}
En el enlace anterior (ConnectionCallback doc) dice:
Las aplicaciones deben deshabilitar los componentes de UI que requieren el servicio y esperar una llamada a onConnected (Bundle) para volver a habilitarlos.
¿Pero cómo sucederá esta llamada a onConnected? ¿Debo llamar a mGoogleApiClient.connect () de nuevo? ¿O el mGoogleApiClient continuará intentando conectarse incluso después de una suspensión de conexión?
GoogleApiClient intentará volver a conectarse automáticamente. No necesita llamar a connect()
nuevo.
El documento onConnected()
dice lo siguiente:
Después de llamar a connect (), este método se invocará de forma asíncrona cuando la solicitud de conexión se haya completado correctamente.
Esto implica que debe llamar a connect()
contrario no se llamará a onConnected()
.