2012-01-06 47 views
2

我最近開始爲Android平臺開發,目前正在實施與Google任務同步的應用程序。目前,從技術角度講,我並不面臨太多問題。但是我遇到了一個概念性問題,我找不到一個合適的解決方法。Android最佳實踐:檢查Google帳戶存在的最佳方法?

比方說,用戶使用我的應用程序與給定的Google帳戶。他開展一些活動,做一些工作......然後點擊主頁按鈕。然後他進入操作系統設置並刪除其Google帳戶。然後他回到我的應用程序,然後顯示他在退出應用程序時所使用的活動。

由於沒有更多的Google帳戶,我的應用程序應該提交「添加帳戶」活動以允許他選擇或創建Google帳戶。當然,如果他在這一點上點擊後退按鈕,他應該被髮送到啓動器,而不是從後退堆棧中的前一個活動。

您將如何處理這種需求?

我首先想到,當我的應用程序回到前臺時可能會收到通知,但似乎Android總是處理活動,這意味着我必須在所有活動中實施「帳戶檢查器」!而且,即使我實現了這個功能,如何防止用戶返回到後端堆棧,並在他點擊後退按鈕時將其重定向到啓動器?

如果你們中的一些人可以給我一些建議,一些最佳實踐,以解決這個問題,你會讓我的一天。

PS:我剛剛檢查了包含GMail應用程序的Android 4,當我刪除了所有的Google帳戶然後啓動應用程序時,系統顯示「添加Google帳戶」活動並點按返回按鈕,發射器。這正是我想要實施的行爲。我想這個應用程序不是開源的,對吧?

回答

1

當活動進入前臺時,onResume將被調用,並且當活動被推送到後臺活動時,onPause將被調用。

您可以隨時檢查帳戶狀態onResume。然後,我會建議您擴展活動類並創建一個包含您的Google檢查器的BaseClass,以便您想要檢查的每個活動都具有它。

只要後退按鈕,你可以註冊一個監聽按鈕,你甚至可以忽略後退按鈕,如果你是如此傾向(不推薦,但由SDK允許)。

+0

感謝onResume和onPause的輸入。關於繼承Activity類的想法,這是不可能的,因爲我將失去使用ListActivity等框架Activity子類的能力... – 2012-01-06 23:47:57