Re: [問題] socket送出字串

看板AndroidDev作者 (LaPass)時間12年前 (2011/09/25 14:58), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/4 (看更多)
自己之前在找網路連線的方法時 找到ObjectInputStream、ObjectOutputStream這個東西 這東西蠻方便的,只要implements Serializable介面 就連自己寫的物件都能發送出去 至於int、String、Date等基礎類型 只要去找java doc,看到有實作Serializable,就能直接傳過去 甚至連android.location.Location之類的都能直接傳送出去 這是那時寫的一個小東西 http://www.megaupload.com/?d=L5FYRI0V 使用方法是: socket s = new socket(); //(中略,建立一條連線,取得一條已經連線的socket) //server端也一樣 SocketListener SL = new SocketListener(s); 然後,就可以透過 SL.SendNext(Object obj) 送出物件給另一方 或是透過 SL.GetNext() 接受物件 這裡的SL.GetNext()不會block,如果拿不到東西只會直接傳回null 所以可以在android裡的UI Thread執行,而不會造成ANR 另外,有個幾個要注意的地方是 假設自己寫了個class,在手機中的套件名稱是com.pack1.test01 那server端的com.pack1.test01也必須要有那個class 否則會出現 EOFException 以及,在關閉時要記得呼叫CloseLink() 要不然執行緒會一直執行下去 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.233.158.97

09/25 23:22, , 1F
非常感謝! 我來試試看^^
09/25 23:22, 1F
文章代碼(AID): #1EVj3vkX (AndroidDev)
文章代碼(AID): #1EVj3vkX (AndroidDev)