2014-02-18 43 views
2

我想爲GooglePlus創建一個庫。爲此,我創建了多個類,如登錄,發佈和獲取用戶配置文件。在不同活動中相同的GooglePlus客戶端對象android

我是否必須實現onConnected,onDisconnected,onConnectionFailed? 我必須在每個類中調用plusClient.connect()嗎?

當前如果我在第一個(登錄)類中連接(),然後嘗試從不同的活動發佈使用的帳戶,那麼它會產生問題。即使我在之前的活動中完成了這一操作,我也必須再次連接()。

有沒有解決方案,我可以在多個活動中使用相同的plusClient對象?

在此先感謝。

回答

3

PlusClient類被設計爲輕量,這樣就沒有必要在整個活動實例共享PlusClient實例。請參閱:

Access google plus client from multiple activities

這就是說,有什麼能夠阻止你,只要你確保PlusClient.connect()PlusClient.disconnect()被稱爲在適當的時間,如果你管理你的PlusClient作爲服務或應用程序的一部分,這樣做目的。

此外,請注意PlusClient現在已被廢棄,以有利於GoogleApiClient。儘管如此,它們是等同的。

1

這是GoogleApiClient將幫助你的情況。讓來電者負責管理GoogleApiClient的生命週期。讓他們把它傳遞給你的圖書館。您可以添加一個ConnectionCallbacks聽衆並在onConnected中執行您的操作。

這也意味着您的庫不負責處理連接失敗。這是來電者在這種情況下的工作。通常情況下,這不是你想要的,除非你提供基本的Activity/Fragment類。如果是這種情況,那麼請在這裏處理這些情況。這樣它並沒有散佈在整個代碼中。

相關問題