Używam GoogleApiClient w usłudze, aby żądać bezpiecznych aktualizacji lokalizacji. Każda rzecz działa poprawnie, ale czasami połączenie jest zawieszone i wywoływane jest połączenieConnectionSuspended.GoogleApiClient onConnectionPo zawieszeniu, czy powinienem ponownie zadzwonić do mGoogleApiClient.connect()?
@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 ? ?
}
w linku powyżej (ConnectionCallback doc) mówi:
Wnioski należy wyłączyć elementy interfejsu, które wymagają naprawy, i czekać na wezwanie do onConnected (Bundle), aby ponownie je włączyć.
Ale jak zadziała to połączenie z połączonym? czy powinienem ponownie zadzwonić do mGoogleApiClient.connect()? lub mGoogleApiClient będzie kontynuować próby połączenia nawet po zawieszeniu połączenia?
Cześć Hounshell, dziękuję za odpowiedź, ale jak możesz być tego pewien? czy jest jakiś dokument, który tak mówi? – Turkish
Jestem oryginalnym autorem GoogleApiClient. Spróbuję dodać dokumentację do następnej wersji, która to wyjaśnia. – Hounshell
@Hounshell Dziękuję. A proces wylogowania z Google plus jest żmudnie kłopotliwy. Czy możesz to również udokumentować? Istnieją dziesiątki pytań dotyczących tego w StackOverflow. Dokumentacja jest bardzo wąska i myląca (w porównaniu z Facebookiem). – VipulKumar