#android #delphi #firemonkey #indy
#Android #delphi #firemonkey #indy
Вопрос:
Для некоторых особых, личных нужд я хочу использовать TIdHTTPServer (компонент из проекта Indy для RAD Studio) на устройстве Android через мобильное сетевое соединение, к которому я могу подключиться с помощью клиента, такого как браузер, wget или что-то еще.
Мое приложение FireMonkey работает должным образом на Windows и Android с использованием WLAN-соединения. Но на Android с включенным подключением к мобильному Интернету и выключенной WLAN я не могу установить внешнее соединение с сервером TIdHTTPServer, работающим на Android. Нет мгновенного отключения соединения — это тайм-аут.
Я думаю, что это может быть что-то связанное с Android, или, может быть, это как-то связано с тем, как мой провайдер сотовой связи обрабатывает мобильные соединения. Возможно, они блокируют или просто не перенаправляют внешние (мобильные) соединения, как это делают «брандмауэры» NAT, где нужно создать перенаправление портов и так далее.
Я также безуспешно пытался добавить мобильный IP-адрес и порт моего серверного приложения к привязкам компонента TIdHTTPServer (ошибка говорит о том, что адрес и порт уже используются). IP — это версия 4, а Android — версия 6. INDY — 10.6.2.5341.
Возможно ли в конце концов использовать сервер на Android с мобильными подключениями? Каковы препятствия? Может быть, я просто забыл установить определенные права приложения?
Комментарии:
1. К какому адресу вы пытаетесь подключиться локально?
LocalHost
?127.0.0.1
?2. Я не подключаюсь к локальному адресу. Я создал приложение FireMonkey с компонентом TIdHTTPServer, который работает на Android. Теперь я пытаюсь подключиться с другого IP-адреса через Интернет к мобильному IP-адресу устройства Android, но не могу установить соединение.
3. Ну, тогда это определенно проблема с брандмауэром / NAT. В данном случае это вообще не вопрос программирования. Вопросы по профессиональному администрированию серверной или сетевой инфраструктуры не относятся к теме Stack Overflow, если они непосредственно не связаны с программированием или инструментами программирования. Возможно, вы сможете получить помощь при сбое сервера.
4. На данный момент нет необходимости голосовать за закрытие этого вопроса, потому что это может быть вопрос, связанный с программированием. Разве это не может быть ограничение Android, которого можно избежать, установив что-то в файле XML-манифеста?
5. Вы до сих пор так и не сказали, как вы подключаетесь к нему. Какой адрес вы используете?