在Xamarin.Android
上,您可以使用所有常规的.Net套接字类:
命名空间:
using System.Net;
using System.Net.Sockets;
示例:
IPHostEntry ipHostInfo = Dns.GetHostEntry (Dns.GetHostName ());
IPAddress ipAddress = ipHostInfo.AddressList [0];
IPEndPoint localEndPoint = new IPEndPoint (ipAddress, 11000);
System.Diagnostics.Debug.WriteLine(ipAddress.ToString());
// Create a TCP/IP socket.
Socket listener = new Socket (AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
AndroidManifest.xml所需权限:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
基于 MSDN 的 异步服务器套接字 示例可以直接复制黏贴使用。
即
使用 MSDN 提供的代码,您可以在一个线程中调用静态方法AsynchronousSocketListener.StartListening
,以便在 AsynchronousSocketListener
类中定义的端口 11000 上开始侦听。
new Thread (new ThreadStart (delegate {
AsynchronousSocketListener.StartListening();
})).Start ();
一旦它在您的设备/模拟器上运行,您就可以telnet到您的Android TCP套接字服务器:
>telnet 10.71.34.100 11000
Trying 10.71.34.100...
Connected to 10.71.34.100.
Escape character is '^]'.
一旦连接成功,输入
This is a test<EOF>
,Android将反馈回来:
This is a test<EOF>