Программа ниже просто зависает и в конечном итоге генерирует исключение TimeOutException на стороне клиента. Понятия не имею, что случилось. Мой телефон (клиент) использует мобильные данные, а мой компьютер (сервер) использует мою домашнюю сеть (Wi-Fi). Я отключил все брандмауэры на своем компьютере и добавил специальные правила, позволяющие принимать IP-адреса моих телефонов. Я использую ноутбук Windows XPS-13.
Примечание: я почти все соответствующие сообщения о программировании сокетов, и ни один из них не дал достаточного ответа. Примечание: я новичок в программировании сокетов и StackOverflow, поэтому, пожалуйста будьте снисходительны к любым несоответствиям
Окончательные вопросы: как я могу подключить свой телефон к моему компьютеру при использовании мобильных данных (или другой сети). Почему программа зависает, даже если IP-адреса и порты правильные?
СЕРВЕРНАЯ СТОРОНА (Компьютер)
import socket
sock = socket.socket()
device_name = socket.gethostname()
ip = "192.168.*.*" # Redacted IP of Computer, not Public IP
port = 50_007
sock.bind((ip, port))
sock.listen(0)
c1, address = sock.accept()
print("Connection!")
sock.close()
КЛИЕНТСКАЯ СТОРОНА (Android Телефон)
import socket
sock = socket.socket()
ip = "192.168.*.*" # Same Computer IP as Server (as above)
port = 50_007
sock.connect((ip,port))