Android手机通过wifi进行数据传输(二)

来源:互联网 发布:java web javascript 编辑:程序博客网 时间:2024/06/09 16:51
上文接Android手机通过wifi进行数据传输(一)
以下是源码文件
原文件Constant.java
package edu.cdut.robin;

public class Constant {
public final static String END="end";
public final static String HOST_SPOT_SSID="HotSpotRobin";
public final static String HOST_SPOT_PASS_WORD="123456789";
}

 源码文件1
QuickTransferActivity.java文件
<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p><div><span class="kwd" style="color: rgb(0, 0, 136);">package</span><span class="pln"> edu</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">cdut</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">robin</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">io</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">BufferedReader</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">io</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">IOException</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">io</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">InputStreamReader</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">io</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">PrintWriter</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">InetAddress</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">ServerSocket</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Socket</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> java</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">UnknownHostException</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> edu</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">cdut</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">robin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">hotspot</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">WifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> edu</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">cdut</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">robin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">hotspot</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">WifiApAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">app</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Activity</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">content</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">BroadcastReceiver</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">content</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Context</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">content</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Intent</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">content</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">IntentFilter</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">DhcpInfo</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">wifi</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">WifiInfo</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">net</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">wifi</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">WifiManager</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">os</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Bundle</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">os</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Handler</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">util</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">view</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">View</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">widget</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">import</span><span class="pln"> android</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">widget</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">TextView</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">class</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">QuickTransferActivity</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">extends</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Activity</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">implements</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">    </span><span class="com" style="color: rgb(136, 0, 0);">/** Called when the activity is first created. */</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">TextView</span><span class="pln"> content</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pln"> mBtn3</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> mBtn4</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">WifiAdmin</span><span class="pln"> mWifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">WifiApAdmin</span><span class="pln"> wifiAp</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">Context</span><span class="pln"> context</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">final</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">static</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> TAG </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="pln">    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onCreate</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Bundle</span><span class="pln"> savedInstanceState</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">super</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">onCreate</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">savedInstanceState</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        setContentView</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">layout</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">main</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        content </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">TextView</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">findViewById</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">id</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">content</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        mBtn3 </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> findViewById</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">id</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">button3</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        mBtn4 </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> findViewById</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">id</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">button4</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        mBtn3</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">setText</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"点击连接Wifi"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        mBtn4</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">setText</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"点击创建Wifi热点"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        context </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        mBtn3</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">setOnClickListener</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">OnClickListener</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div></div><div><span class="pln">            </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onClick</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">View</span><span class="pln"> v</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div></div><div><span class="pln">                mWifiAdmin </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">WifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">context</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div></div><div><span class="pln">                    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> myUnregisterReceiver</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">BroadcastReceiver</span><span class="pln"> receiver</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        unregisterReceiver(receiver);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    }</span></div><div></div><div><span class="pln">                    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Intent</span><span class="pln"> myRegisterReceiver</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">BroadcastReceiver</span><span class="pln"> receiver</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">IntentFilter</span><span class="pln"> filter</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        registerReceiver(receiver, filter);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        return null;</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    }</span></div><div></div><div><span class="pln">                    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onNotifyWifiConnected</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        Log.v(TAG, "have connected success!");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        Log.v(TAG, "###############################");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    }</span></div><div></div><div><span class="pln">                    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onNotifyWifiConnectFailed</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        Log.v(TAG, "have connected failed!");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        Log.v(TAG, "###############################");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    }</span></div><div></div><div><span class="pln">                </span><span class="pun" style="color: rgb(102, 102, 0);">};</span></div><div><span class="pln">                mWifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">openWifi</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">                mWifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">addNetwork</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">mWifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">createWifiInfo</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">HOST_SPOT_SSID</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">HOST_SPOT_PASS_WORD</span><span class="pun" style="color: rgb(102, 102, 0);">,</span></div><div><span class="pln">                        </span><span class="typ" style="color: rgb(102, 0, 102);">WifiAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">TYPE_WPA</span><span class="pun" style="color: rgb(102, 102, 0);">));</span></div><div></div><div><span class="pln">            </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">});</span></div><div></div><div><span class="pln">        mBtn4</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">setOnClickListener</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Button</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="typ" style="color: rgb(102, 0, 102);">OnClickListener</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div></div><div><span class="pln">            </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onClick</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">View</span><span class="pln"> v</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div></div><div><span class="pln">                wifiAp </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">WifiApAdmin</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">context</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                wifiAp</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">startWifiAp</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">HOST_SPOT_SSID</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">HOST_SPOT_PASS_WORD</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">});</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onClick</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">View</span><span class="pln"> view</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">view</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getId</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">id</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">button1</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">WifiManager</span><span class="pln"> wifiManage </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">WifiManager</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> getSystemService</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Context</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">WIFI_SERVICE</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">DhcpInfo</span><span class="pln"> info </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> wifiManage</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getDhcpInfo</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">WifiInfo</span><span class="pln"> wifiinfo </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> wifiManage</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getConnectionInfo</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> ip </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> intToIp</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">wifiinfo</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getIpAddress</span><span class="pun" style="color: rgb(102, 102, 0);">());</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> serverAddress </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> intToIp</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">info</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">serverAddress</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Sender</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">serverAddress</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">).</span><span class="pln">start</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">w</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"ip:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> ip </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"serverAddress:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> serverAddress </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> info</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">else</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">view</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getId</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> R</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">id</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">button2</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Receiver</span><span class="pln"> service </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Receiver</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            service</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">start</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">Handler</span><span class="pln"> handler </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Handler</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">StringBuffer</span><span class="pln"> strBuffer </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">StringBuffer</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">final</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> msg</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="typ" style="color: rgb(102, 0, 102);">Runnable</span><span class="pln"> r </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Runnable</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> run</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                if (strBuffer.length() > 1024) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    strBuffer.delete(0, 100);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                strBuffer.append(msg + "\n");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                content.setText(strBuffer.toString());</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                content.invalidate();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        };</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        handler.post(r);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">    }</span></div><div></div><div><span class="pln">    </span><span class="com" style="color: rgb(136, 0, 0);">// 将获取的int转为真正的ip地址,参考的网上的,修改了下</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">private</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> intToIp</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> i</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">return</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">&</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0xFF</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"."</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">>></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">8</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">&</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0xFF</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"."</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">>></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">16</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">&</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0xFF</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"."</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">>></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">24</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">&</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0xFF</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> appendMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> msg</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">msg</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onResult</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> result</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> size</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">wifiAp </span><span class="pun" style="color: rgb(102, 102, 0);">!=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">null</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            wifiAp</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">closeWifiAp</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">context</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">        </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        closeWifi();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        Runnable r = new Runnable() {</span></div><div></div><div><span class="pln">            </span><span class="lit" style="color: rgb(0, 102, 102);">@Override</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> run</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated method stub</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                displayMesage("try to open wifi");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                openWifi();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                displayMesage("open wifi end");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            }</span></div><div></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">};</span></div><div><span class="pln">        handler</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">postDelayed</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">r</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">30</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">*</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1000</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">WifiManager</span><span class="pln"> mWifiManager</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="com" style="color: rgb(136, 0, 0);">// 打开WIFI</span></div><div><span class="com" style="color: rgb(136, 0, 0);">    public void openWifi() {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if(mWifiAdmin!=null){</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiAdmin.openWifi();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            return;</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if (mWifiManager == null) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if (!mWifiManager.isWifiEnabled()) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiManager.setWifiEnabled(true);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">    }</span></div><div></div><div><span class="com" style="color: rgb(136, 0, 0);">// 关闭WIFI</span></div><div><span class="com" style="color: rgb(136, 0, 0);">    public void closeWifi() {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if(mWifiAdmin!=null){</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiAdmin.closeWifi();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            return;</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if (mWifiManager == null) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        if (mWifiManager.isWifiEnabled()) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            mWifiManager.setWifiEnabled(false);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">    }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">}</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">interface</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> msg</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> appendMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> msg</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">interface</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> onResult</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> result</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> size</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">class</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Receiver</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">extends</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Thread</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">private</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">static</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">BufferedReader</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">in</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">Receiver</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">super</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">console </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">transferResult </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> run</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">try</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">ServerSocket</span><span class="pln"> socketService </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">ServerSocket</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="lit" style="color: rgb(0, 102, 102);">3358</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">i</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"waiting a connection from the client"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> socketService</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Socket</span><span class="pln"> sock </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> socketService</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">accept</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> hostAddress </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getLocalAddress</span><span class="pun" style="color: rgb(102, 102, 0);">().</span><span class="pln">getHostAddress</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> inetAddress </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getInetAddress</span><span class="pun" style="color: rgb(102, 102, 0);">().</span><span class="pln">getHostAddress</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">w</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"local:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> hostAddress </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"| inetAddress"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> inetAddress </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"|"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getRemoteSocketAddress</span><span class="pun" style="color: rgb(102, 102, 0);">());</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">w</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"local name:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getLocalAddress</span><span class="pun" style="color: rgb(102, 102, 0);">().</span><span class="pln">getHostName</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"| inetAddress"</span></div><div><span class="pln">                    </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getInetAddress</span><span class="pun" style="color: rgb(102, 102, 0);">().</span><span class="pln">getHostName</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"|"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">InetAddress</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getLocalHost</span><span class="pun" style="color: rgb(102, 102, 0);">().</span><span class="pln">getHostAddress</span><span class="pun" style="color: rgb(102, 102, 0);">());</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">in</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">BufferedReader</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">InputStreamReader</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">getInputStream</span><span class="pun" style="color: rgb(102, 102, 0);">()));</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> line</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">boolean</span><span class="pln"> flag </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">true</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> count </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> time </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">System</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">currentTimeMillis</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">do</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                line </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">in</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">readLine</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">                </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">flag</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                    console</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"Recevie:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> line</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                    flag </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">false</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">                </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">                count </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> count </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> line</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">length</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">                </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">count </span><span class="pun" style="color: rgb(102, 102, 0);">%</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1024</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                    console</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"Recevied:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="pln">count </span><span class="pun" style="color: rgb(102, 102, 0);"><<</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">>></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">10</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"kB data"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">            </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">while</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(!</span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="kwd" style="color: rgb(0, 0, 136);">END</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">equals</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">line</span><span class="pun" style="color: rgb(102, 102, 0);">));</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">w</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"you input is :"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> line</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> t </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">System</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">currentTimeMillis</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">-</span><span class="pln"> time</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">t </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">)</span></div><div><span class="pln">                t </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            count </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> count </span><span class="pun" style="color: rgb(102, 102, 0);"><<</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">long</span><span class="pln"> rate </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="pln">count </span><span class="pun" style="color: rgb(102, 102, 0);">/</span><span class="pln"> t</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">*</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1000</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">/</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1024</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            count </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> count </span><span class="pun" style="color: rgb(102, 102, 0);">>></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">10</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">            console</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"Recevied:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> count </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"kB data"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">" in "</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> t </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">" ms"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">" at rate:"</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> rate</span></div><div><span class="pln">                    </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">" kB/second"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">i</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">"exit the app"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">            sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">close</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            socketService</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">close</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">onResult</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> count</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">catch</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Exception</span><span class="pln"> e</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            e</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">printStackTrace</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="kwd" style="color: rgb(0, 0, 136);">class</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Sender</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">extends</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">Thread</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> serverIp</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div></div><div><span class="pln">    </span><span class="typ" style="color: rgb(102, 0, 102);">Sender</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">String</span><span class="pln"> serverAddress</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">DisplayMesage</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">ITransferResult</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">super</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">        serverIp </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> serverAddress</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">console </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> console</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">this</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">transferResult </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div></div><div><span class="pln">    </span><span class="kwd" style="color: rgb(0, 0, 136);">public</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">void</span><span class="pln"> run</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">        </span><span class="typ" style="color: rgb(102, 0, 102);">Socket</span><span class="pln"> sock </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">null</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        </span><span class="typ" style="color: rgb(102, 0, 102);">PrintWriter</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">out</span><span class="pun" style="color: rgb(102, 102, 0);">;</span></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">try</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div></div><div><span class="pln">            </span><span class="com" style="color: rgb(136, 0, 0);">// 声明sock,其中参数为服务端的IP地址与自定义端口</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            sock = new Socket(serverIp, 3358);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            Log.w("robin", "I am try to writer" + sock);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        } catch (UnknownHostException e) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            // TODO Auto-generated catch block</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            e.printStackTrace();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        } catch (IOException e) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            // TODO Auto-generated catch block</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            e.printStackTrace();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        char data[] = new char[1024 * 10];</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        for (int i = 0; i < data.length; i++) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            data[i] = (char) i;</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        try {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            if (sock != null) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                // 声明输出流out,向服务端输出“Output Message!!”</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                final String msg = "Hello,this is robin!!";</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                Log.w("robin", "try to writer");</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                out = new PrintWriter(sock.getOutputStream(), true);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                StringBuffer strBuffer = new StringBuffer();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                strBuffer.append(msg);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                String str = msg;</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                for (int i = 0; i < 1024; i++) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    if (i != 0) {</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        str = msg + System.currentTimeMillis() + "|";</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                        out.write(data);</span></div><div><span class="com" style="color: rgb(136, 0, 0);">                    }</span></div><div></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">out</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">println</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">str</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                    </span><span class="typ" style="color: rgb(102, 0, 102);">Log</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">w</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"robin"</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> str</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        console</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"send message...."</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">else</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">i </span><span class="pun" style="color: rgb(102, 102, 0);">%</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">100</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">==</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        console</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">displayMesage</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="str" style="color: rgb(0, 136, 0);">"send message "</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> i </span><span class="pun" style="color: rgb(102, 102, 0);">+</span><span class="pln"> </span><span class="str" style="color: rgb(0, 136, 0);">" success!"</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">                    </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">strBuffer</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">length</span><span class="pun" style="color: rgb(102, 102, 0);">()</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">></span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1024</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                        strBuffer</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="kwd" style="color: rgb(0, 0, 136);">delete</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="lit" style="color: rgb(0, 102, 102);">0</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> strBuffer</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">length</span><span class="pun" style="color: rgb(102, 102, 0);">());</span></div><div><span class="pln">                    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">                </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">                </span><span class="kwd" style="color: rgb(0, 0, 136);">out</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">println</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Constant</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="kwd" style="color: rgb(0, 0, 136);">END</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">                </span><span class="kwd" style="color: rgb(0, 0, 136);">out</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">flush</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">            transferResult</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">onResult</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">);</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">catch</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">IOException</span><span class="pln"> e</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            </span><span class="com" style="color: rgb(136, 0, 0);">// TODO Auto-generated catch block</span></div><div><span class="com" style="color: rgb(136, 0, 0);">            e.printStackTrace();</span></div><div><span class="com" style="color: rgb(136, 0, 0);">        }</span></div><div></div><div><span class="pln">        </span><span class="kwd" style="color: rgb(0, 0, 136);">try</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            </span><span class="kwd" style="color: rgb(0, 0, 136);">if</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">sock </span><span class="pun" style="color: rgb(102, 102, 0);">!=</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">null</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">                sock</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">close</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">            </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">catch</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Exception</span><span class="pln"> ex</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">{</span></div><div><span class="pln">            ex</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln">printStackTrace</span><span class="pun" style="color: rgb(102, 102, 0);">();</span></div><div><span class="pln">        </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pln">    </span><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><div><span class="pun" style="color: rgb(102, 102, 0);">}</span></div><p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p>
下文
0 0
原创粉丝点击