O UDP do AndroidEmulator (--Genymotion--) para o servidor localhost (10.0.2.2) não funciona?
Eu simplesmente tento enviar e receber dados entre o MonodroidApp (AndroidEmulator) e um localDevServer. Entendo que o localhost está especialmente mapeado para "10.0.2.2" no AndroidEmulator, então fiz o seguinte, mas o aplicativo não responde.
System.Text.Encoding enc = System.Text.Encoding.UTF8;
string sendMsg = "testtest";
byte[] sendBytes = enc.GetBytes(sendMsg);
int localPort = 39000;
var udp = new System.Net.Sockets.UdpClient(localPort);
//send data
string remoteHost = "10.0.2.2";//"127.0.0.1";
int remotePort = 15000;
udp.Send(sendBytes, sendBytes.Length,
remoteHost, remotePort);
//receive data
System.Net.IPEndPoint remoteEP = null;
byte[] rcvBytes = udp.Receive(ref remoteEP);
string rcvMsg = enc.GetString(rcvBytes);
Console.WriteLine("received data:{0}", rcvMsg);
Console.WriteLine("sender address:{0}/port:{1}",
remoteEP.Address, remoteEP.Port);
Este código foi verificado para funcionar com o Mono para Mac e o localDevServer com o ponteiro: remoteHost = "127.0.0.1"
tão,
remoteHost = "10.0.2.2" padrão não funciona.
Do que sinto falta? Alguém, qualquer pensamento?
Obrigado.