Нужен фрагмент кода, позволяющий бесконечно воспроизводить функцию (прием сигнала Bluetooth) Xamarin.Forms
Имеется функция, отвечающая за получение данных с другого устройства Bluetooth, проблема состоит в том, что получение данных осуществляется при нажатии на кнопку, а мне бы хотелось, чтобы данные принимались беспрерывно. Вот код функции:
private async void btnRecive_Clicked(object sender, EventArgs e)
{
connect_label.Text = "Wait to connection";
const int OffsetDefault = 0;
var device = (BluetoothDeviceModel)BindingContext;
if (device != null)
{
var adapter = DependencyService.Resolve<IBluetoothAdapter>();
using (var connection = adapter.CreateConnection(device))
{
if (await connection.RetryConnectAsync(retriesCount: 1))
{
byte[] buffer = new byte[1024];
if (!(await connection.RetryReciveAsync(buffer, OffsetDefault, 1024)).Succeeded)
{
await DisplayAlert("Error", "Can not send data", "Close");
connect_label.Text = "Start your connection:";
}
else
{
char[] char_msg_recieved = new char[buffer.Length];
string string_msg_recieved = "";
char temp;
for (int i = 0; i < buffer.Length; i++)
{
temp = (char)buffer[i];
string_msg_recieved += Convert.ToString(temp);
}
messages.Text = messages.Text + string_msg_recieved + "\n";
connect_label.Text = "Connected";
}
buffer = null;
}
else
{
if(connect_label.Text!= "Start your connection:")
await DisplayAlert("Error", "Can not to connect", "Close");
connect_label.Text = "Start your connection:";
}
}
}
}