다음 코드와 함께 MonoDroid + Simulator에서 UDP 데이터 그램을받지 못합니다. 그러나 동일한 코드가 MonoTouch에서 잘 작동합니다 ...udpClient.Receive는 MonoDroid + 시뮬레이터에서 UDP 데이터 그램을 수신하지 않습니다.
좋아, 나는 동일한 코드가 다른 플랫폼에서도 똑같이 작동한다는 보장은 없다는 것을 알고 있습니다. 하지만 하루가 끝나면 iOS와 Android에서 C#을 사용하여 기대하는 바입니다.
System.Threading.Thread udpListener = new System.Threading.Thread(() =>
{
System.Net.Sockets.UdpClient udpClient = new System.Net.Sockets.UdpClient(UDP_PORT);
while (true)
{
try
{
System.Net.IPEndPoint sender = new System.Net.IPEndPoint(System.Net.IPAddress.Any, 0);
byte[] bytes = udpClient.Receive(ref sender);
using (System.IO.MemoryStream ms = new System.IO.MemoryStream(bytes))
{
System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyMessageList));
MyMessageList messages = serializer.Deserialize(ms) as MyMessageList;
if (messages != null) ParseNotificationMessages(messages);
}
}
catch (System.Exception exp)
{
}
}
});
udpListener.IsBackground = true;
udpListener.Start();
건배, 패트릭
Juande에게 감사드립니다, 당신의 대답은 올바른 방향으로 나를 지적했습니다. 나는 마침내 시뮬레이터에서 UDP 데이터 그램을 얻을 수 있었다. – Patrick