1

在我的应用中,一些 Google API 是可选的。(在本例中为 Games API。)

在我的设置活动中,用户可以选择不登录 Google 游戏。我在那里打电话

Games.signOut(mGoogleApiClient);
googleApiClient.disconnect();
googleApiClient = createGoogleApiClientWithoutGames();
googleApiClient.connect();

createGoogleApiClientWithoutGames方法创建一个不使用 Games API 和相应范围的新 GoogleApiClient。

  1. 这是从客户端删除 api 和范围的正确方法吗?

  2. 如何确保其他活动(尚未销毁)的 googleApiClient 不使用 Games API?目前,当从设置活动返回时,客户端正在onStart()使用当前客户端配置(使用游戏)进行连接。发送本地广播消息并重新创建客户端?

4

1 回答 1

1

我正在使用状态变量来检查onStart()MainActivity 中的当前客户端是否使用正确的 api。如果不是,我在连接之前重新创建它。

完整的源代码可在https://github.com/friedger/google-api-client-example获得

于 2016-02-16T09:59:34.530 回答