У меня есть класс в библиотеке .NET, и я использую httpClient для отправки запросов. Он работает отлично и мгновенно на iOS, но на Android отправляет несколько запросов постов в быстрой последовательности приводит к заметной задержке: < /p>
Первая команда - это быстро < /p>
Последующие команды занимают 5+ seconds < /p>
, если я ждаю 5 секунд, и каждая команда снова < /p> > a ждать 5 секунд. (Вызывается с ожиданием каждый раз): < /p>
Код: Выделить всё
internal async Task SendCommandAsync(string action)
{
try
{
var requestUri = $"https://{ip}:8080/api/command?action={action}";
var request = new HttpRequestMessage(HttpMethod.Post, requestUri);
request.Headers.Add("x-api-key", "xxx");
request.Headers.Add("x-client-token", token);
HttpResponseMessage response = await client.SendAsync(request);
if (response.IsSuccessStatusCode)
{
Console.WriteLine($"Command '{action}' sent successfully.");
return true;
}
else
{
Console.WriteLine($"Error send command: {response.StatusCode} - {await response.Content.ReadAsStringAsync()}");
return false;
}
}
catch (Exception ex)
{
Console.WriteLine($"Exception: {ex.Message}");
return false;
}
}
- Повторное использование одного экземпляра HttpClient
- инъекция различных обработчиков (httpclienthandler, androidmessagehandler)
- for Версия (1, 1);)
- Отключение прокси
- Добавление подробных журналов времени (задержка всегда находится внутри await client.sendasync (запрос))
- Тот и тот же сервер/сеть: на iOS, как ожидалось; на Android, отложенном после первого запроса < /li>
< /ul>
Дополнительная информация: < /strong> < /p>
Приложение для Android и сервер находятся в одной и той же сети Wi -Fi < /li>
not ince not reusing < /li>
. Httpcontent/stringcontent объекты - Не используя Fire и Forget; Всегда ожидает запросов
Вопросы :
Почему это происходит только на Android? /> Есть ли другие советы по отладки или известные проблемы в .net maui для сети Android, которые я должен проверить?>
Подробнее здесь: https://stackoverflow.com/questions/796 ... iple-rapid