2012-11-26 73 views
1

我正在開發一個聊天客戶端,其中有一個服務正在從XMPP服務器持續監聽。關於這項服務的架構我有幾個問題。android綁定服務如何區分多個活動?

  1. 我已經服務類Android上開發頁面的文檔是的onCreate()將被調用一次在閱讀的時候,第一次的服務運行這就是爲什麼我寫在服務的服務器代碼的連接onCreate()方法。可以嗎?

  2. 當我點擊一個ListView元素,這是我的客戶活動中我的朋友的名字時,會打開一個新活動,它將綁定到服務以偵聽和發送聊天消息。我想知道一項服務如何區分特定的消息是用於哪項活動?因爲如果我與一個以上的朋友聊天,則會有超過1個活動,並且該服務必須區分哪個消息針對哪個活動。我需要知道如何實現這個機制?如果有任何教程或描述我需要做什麼來實現此機制,這可能會非常有幫助?

回答

0

可以嗎?

這是不可能在摘要中回答的。這種方法沒有什麼明顯的錯誤。

我需要知道我該如何實現這個機制?

說實話,那個UI聽起來很尷尬。話雖如此,你可以讓活動向服務提供一個監聽器或回調對象,服務使用該對象將消息路由回該活動。

+0

如果用戶界面聽起來很尷尬什麼可能是最好的方法來實現我已經解釋過的場景?我期望你的答案是,在活動中有聊天消息不好嗎?讓我知道什麼可能是實施它的最佳方法? – Dennis

+0

@丹尼斯:我會有一個單獨的活動。每次聊天使用一個片段,託管在一個'ViewPager'中,這樣用戶就可以水平滑動來在聊天間移動。這也將大大簡化您與服務的交互。 – CommonsWare

+0

謝謝你的回答。我不熟悉fragment和ViewPager。但我會看看他們,並會嘗試使用這種方法。讓我知道你是否有很好的鏈接來閱讀它,否則我會閱讀文檔。 – Dennis