2014-10-21 29 views
0

你好我開發的Android(只是私人項目)聊天應用Android,有什麼更高效?隱藏活動或啓動新與舊的數據

  • 用戶擁有的聯繫人列表中,他可以選擇接觸(讓我們稱之爲 這項活動contact_activity)。
  • 當他選擇接觸,未來 活動(可以稱之爲chat_activity)打開,在那裏,他能與其他用戶 寫郵件,但是當用戶按下後退按鈕,並 再次恢復同一個聊天室,一切從之前的活動 會話被刪除。
  • 我想存儲和顯示收到的每個用戶輸入的活動對話 的數據,直到他手動關閉對話 或應用程序關閉。

什麼解決方案更優化?

  • 從每個chat_activity回傳數據contact_activity和 然後傳回當用戶通過
  • 我聽說了一些魔術活動堆棧中創建新的活動「恢復」 chat_activity,所以要儘量減少活動 然後以某種方式恢復舊的數據上下文。

感謝您的建議。

回答

1

我不熟悉你在談論的神奇......

但它不是活動的工作保存數據,他們的工作是向他們展示。

解決方案我建議您有一個ChatManager,例如,它是一個單身漢。該經理可以保持某種對所有有效聊天[那些因爲你打開的應用程序,就開了],也許Map其關鍵數據結構由表示Contact模型對象你的聊天對象和值可能是一個List Message屬於該聊天會話。

活動「保存和恢復」技術並不意味着活動之間的數據保持完整並在以後打開,它意味着在某種配置更改期間保留數據或讓操作系統殺死您的活動,原因是低內存或東西..

+0

好吧,我設法在類中創建靜態地圖描述contact_activity,索引它與contactitem哈希碼,然後傳遞正確的索引類描述chat_acitivty我總是把現有的arrayadapter(更好的說我的自定義適配器)到地圖與當前索引(又名哈希碼)。沒有必要保持整個活動活着,靜態地圖是答案。 – Smarty77 2014-10-22 19:54:59