2014-12-08 21 views
8
public class MainActivity extends Activity implements GoogleApiClient.ConnectionCallbacks { 

    @Override 
    public void onConnectionSuspended(int i) { 
     Log.d(TAG, "onConnectionSuspended() called. Trying to reconnect."); 
     sendToast("onConnectionSuspended() called. Trying to reconnect."); 
     mGoogleApiClient.connect(); 
    } 

    [...] 
} 

Czytałem dokumentację: https://developer.android.com/reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.htmlonConnectionPo zawieszeniu. Jak przetestować? Kiedy ten kod zostanie uruchomiony?

Na podstawie tego co czytałem Zrobiłem prosty test, gdzie podłączone dwa rówieśników w szybką grę. Wyłączyłem połączenie Wi-Fi na jednym z nich. Myślałem, że zamierzam zobaczyć toast za połączenie na Połączenie. Czy istnieje sposób, aby skłonić to tosty do pojawienia się w celach testowych?

Dziękuję

+0

Upewnij się, że kod jest prawidłowo wcięty. Co to jest "RoomStatusUpdateListener", "RoomUpdateListener" itp.? Czy są one istotne dla twojego pytania? Jeśli nie, proponuję usunąć je, aby uniknąć nieporozumień. –

Odpowiedz

17

onConnectionSuspended jest wywoływana gdy aplikacja zostanie odłączony od pakietu Google Play (niekoniecznie z Internetem). Wywołanie zwrotne zostanie wywołane na przykład po przejściu do opcji Ustawienia> Aplikacje> Usługi Google Play> Wymuś zatrzymanie. Innym przykładem jest odinstalowanie usług Google Play. Po kilku sekundach pojawi się onConnectionSuspended, a następnie onConnectionFailed (ponieważ próba ponownego połączenia zakończy się niepowodzeniem).

Również nie dzwoń pod numer mGoogleApiClient.connect() od onConnectionSuspended(...). Ponowne połączenie jest obsługiwane automatycznie.

+0

Nie jestem pewien co do twojego ostatniego stwierdzenia, jak w oficjalnych aplikacjach szybkiego uruchamiania Google, które robią. [źródło] (https://github.com/googleplus/gplus-quickstart-android/blob/master/app/src/main/java/com/google/android/gms/plus/sample/quickstart/MainActivity.java) – JohnTube

+3

Zauważyłem, że z mojego doświadczenia wynika jednak, że jest on obsługiwany automatycznie. –

+3

Według autora kodu, na http://stackoverflow.com/a/26147518/252080, ponowne połączenie jest automatyczne. – String