private void HumidityReception()
{
while (true)
{
Socket socketWithData = socketServer.Accept();
if (socketWithData.Available > 0)
{
byte[] buffer = new byte[256];
string data;
do
{
byte size = (byte)socketWithData.Receive(buffer);
data = Encoding.UTF8.GetString(buffer, 0, size);
} while (socketWithData.Available > 0);
Invoke((Action)(() =>
{
HimidityList.Items.Add(new ListViewItem(data));//System.InvalidOperationException: "Невозможно вызвать Invoke или BeginInvoke для элемента управления до завершения создания дескриптора окна."
}));
}
Thread.Sleep(6000);
}
}
char* host = "192.168.140.92";
private string ip = "192.168.1.2";
private int port = 8545;
try
{
TcpClient client = new TcpClient();
IAsyncResult result = client.BeginConnect(ip, port, null, null);
bool success = result.AsyncWaitHandle.WaitOne(TimeSpan.FromSeconds(1));
if (success)
{
client.EndConnect(result);
client.Close();
Navigation.PushModalAsync(new PowerPage(ip, port));
}
else
{
Toast.MakeText(Android.App.Application.Context, "Данный IP-адрес не действителен", ToastLength.Short).Show();
}
}
catch
{
Toast.MakeText(Android.App.Application.Context, "Это вообще не IP адрес", ToastLength.Short).Show();
}