连接中断。如何测试?这段代码会在什么时候运行?

9
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();
    }

    [...]
}

我已经阅读了文档:https://developer.android.com/reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html 根据我所读的内容,我进行了一个简单的测试,在快速游戏中连接了两个对等方。 我关闭了其中一个设备的WiFi连接。 我以为我会看到一个onConnectionSuspended的toast。有没有一种方法诱发该toast以进行测试?
谢谢你。

请确保您的代码正确缩进。另外,“RoomStatusUpdateListener”,“RoomUpdateListener”等是什么?它们与您的问题相关吗?如果不相关,建议您将其删除以避免混淆。 - Alex Lockwood
1个回答

18

onConnectionSuspended会在您的应用程序与Google Play服务包断开连接时调用(不一定是互联网),例如当您前往设置>应用程序>Google Play服务>强制停止时,回调将被调用。另一个例子是当您卸载Google Play服务时,您将在几秒钟后收到onConnectionSuspended,然后是onConnectionFailed(因为重新连接尝试会失败)。

此外,请勿从onConnectionSuspended(...)中调用mGoogleApiClient.connect()。重新连接已自动处理。


我不确定你最后一句话的意思,因为在官方的 Google 快速入门应用程序中,他们是这样做的。来源 - JohnTube
3
我注意到,在我的经验中,这通常是自动处理的。 - Eugen Pechanec
3
根据代码作者在https://dev59.com/Xl8e5IYBdhLWcg3wHnks#26147518中的说法,重新连接是自动进行的。 - Sterling

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接