我的Android應用程序使用HTTP向用戶自己的PC發送數據/從用戶自己的PC檢索數據,並且與少數測試者一起工作良好。我現在需要考慮個人電腦冬眠的情況。發送從局域網喚醒LAN數據包到個人電腦
我從來沒有這樣做過,但我已經搜索了一下關於WOL'magic packet'和一些用C語言編寫的簡單源碼(在客戶端使用CAsyncSocket)。通過用戶家庭網絡上的Wi-Fi連接做到這一點很可能是相對直接的,但理想情況下,我希望通過移動互聯網工作(假設用戶可以配置其家庭路由器接受/轉發數據包)。
我猜我需要使用一些通用的Java網絡代碼,我一直在尋找java.net
。
在這一點上,我不能決定我是否應該使用java.net.Socket
或java.net.DatagramSocket
。所以問題是,我是否正確地接近了這種方式,以及我應該使用哪種套接字類型(或者兩者都足夠)?非常感謝。
從我記得,它可以是任何東西:UDP,ICMP,TCP只要魔法在數據包中,但數據報應該更容易編程。困難的部分將是找到一種方法,使其工作在無線上;儘管在有線網絡上它非常可靠。 – 2011-04-15 21:07:24
我連接到家庭網絡後,在市場商店中使用了多個應用程序,通過無線網絡喚醒了我的電腦。因爲我沒有正確配置我的路由器,因爲它沒有將數據包轉發給Nat後面的計算機,所以我沒有太多的運氣在網上做。 – Bear 2011-04-15 21:31:19