2014-12-27 20 views
0

裏面我有一個聊天應用程序,我不得不使用網絡,所以我必須用另一個線程網絡operations.My問題開始有這兒過得與此行到我的服務器連接:將所有的網絡運營單線程

connection=new XMPPTCPConnection(configuration); 
connection.connect(); 
chatManager = ChatManager.getInstanceFor(connection); 

我使用新的線程,當用戶想要發送的消息我都用chatManager變量發件人method.But我設置線程內部的變量,所以我不能從另一個訪問該operations.But線程。我該如何解決這個問題?我用這些行發送新消息:

Chat chat=chatManager.createChat(to,messageListener); 
chat.sendMessage(message); 

我想,我必須把所有的網絡操作放在一個線程裏面,但怎麼做?

回答

0

可以使用的AsyncTask建立連接和數據發回給你的活動時,它已經結束了,啓動您的AsyncTask,每當你想幹重活(幾秒鐘)。

+0

是的AsyncTask發射一個新的線程爲每個操作? – Okan 2014-12-27 20:35:22

+2

時間打[該文檔(http://developer.android.com/reference/android/os/AsyncTask.html)。 – keyser 2014-12-27 20:37:23

+0

是的,它的確如此。您也可以使用Handler,但AsyncTask是Google的偏好。 – 2014-12-27 20:43:53