java - 为多个 Activity 创建 GoogleApiClient

标签 java android google-api google-plus

我正在使用 Google+ API 开发一个安卓应用。我有多个 Activity ,每个 Activity 都需要一个 GoogleApiClient 实例。

据我了解 this post可以为每个 Activity 调用相同的 GoogleApiClient 实例。我的问题是我们如何专门创建 GoogleApiClient 的副本?

我们是否再次使用 .addApi()、.addscope() 构建一个并再次实现 onConnected 方法和 OnConnectedFailedListener 方法?因为它看起来重复且效率低下。实现这些方法不会也覆盖其他 Activity 中的相同方法吗?

最佳答案

创建 GoogleApiClient 的多个实例并不昂贵。事实上,如果您使用不止一个 API,这将有助于提高效率。只有您特别请求的服务才会被后台处理。因此,如果一项 Activity 使用 Plus 而另一项 Activity 使用 Drive,则当您进行 Drive Activity 时,Plus 服务不必假脱机。

明确地说,建议您为您创建的每个 Activity 、 fragment 、加载程序、服务或应用程序创建一个单独的 GoogleApiClient 实例(甚至可能是我忘记的其他一些实例) .

如果您真的不想这样做,请使用应用程序上下文而不是 Activity 或 fragment 来创建 GoogleApiClient 并在 Application 对象中保存对它的引用。

关于java - 为多个 Activity 创建 GoogleApiClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24455175/

相关文章:

java - 无法解决 Android Studio 和 Firebase 的依赖关系

Android:以编程方式为 ProgressBar/SeekBar 设置 maxHeight 参数

android - 在 Android 上使用 FFMPEG

Java Google Drive API 没有客户端 secret 或新项目

java - 在 web 应用程序的多线程环境中管理资源

java - 关于类定义的困惑

java - 使用 Dataflow 和 Java 删除 Firestore 集合

android - 有什么方法可以同步我的 avd 的时钟

oauth-2.0 - 使用 Google+ 登录时从我的网页显示 Android 应用程序安装的选项

dart - Flutter/googleapis/Gmail API 发送电子邮件返回 400 Bad Request