Почему TRESTRequest Execute завершается ошибкой с Timeout Exception на устройстве android? - PullRequest
0 голосов
/ 28 февраля 2020

Я собрал приложение firemonkey для запуска на устройстве android, но у меня есть некоторые проблемы с Выполнить процедуру TRESTRequest Класс иногда случайным образом завершается с java . net .SocketTimeoutException . Я заметил, что когда у меня включен Wi-Fi, RESTRequest1.Execute всегда работает правильно, но, с другой стороны, когда я включаю данные Inte rnet на телефоне, я часто получаю java. net 1010 * .SocketTimeoutException *. Почему есть разница между Wi-Fi и Inte rnet Соединение для передачи данных?

Я пробовал с ExecuteAsyn c fuction, но у меня был тот же результат.

procedure TForm1.Button1Click(Sender: TObject);
begin
  RESTResponseDataSetAdapter1.Active := false;
  Label1.Visible := false;
  Application.ProcessMessages;
  RESTRequest1.Resource := 'customer';
  try
    RESTRequest1.Execute; // java.net.SocketTimeoutException
  except
    Showmessage('FAIL');
  end;
  RESTResponseDataSetAdapter1.Active := true;
  Label1.Visible := true;
end;
...