【发布时间】:2015-06-27 03:55:20
【问题描述】:
所以我有一个应用程序,它使用 google+ api 允许用户登录,以及 cast api 允许用户将内容投射到 chromecast。
但是,两个 API 使用相同的连接回调。
区分应该通知哪个 API 连接回调的最佳做法是什么?
例如,onConnected() 会在用户成功登录时调用。但它也会在与 chromecast 的连接建立时调用。如何区分这两种情况?
编辑:所以我从谷歌找到了这个信息:
请注意,connectionHint Bundle 的内容是由特定服务定义的。有关详细信息,请参阅您正在使用的 GoogleApiClient 的具体实现的文档。
但是,我找不到描述不同 API 的 connectionHint 内容的文档。
Edit2:我可以为每个 API 创建一个单独的 API 客户端吗?
【问题讨论】:
-
documentation 建议在 using Activity 的 onStart() 方法中连接客户端,在 onStop() 中断开连接。您的 google+ 处理和 chromecast 处理是否在不同的活动中?如果是这样,似乎要遵循连接生命周期管理的建议,您可能希望每个活动都有一个 GoogleApiClients,从而为每个活动生成单独的回调。换句话说,每个活动都有自己的 onConnected()。
-
附带说明,我刚刚通过查看日志输出确认,当 GoogleApiClient 连接到 Google Drive 时,onConnected() 中返回的包为空;没有连接提示。像你一样,我搜索并无法在任何地方找到它们的记录。也许是为了未来的增强。
标签: android google-api google-api-client