Ответ на оригинальный вопрос
Назначение порта не выполняется, поскольку, как вы заметили, 80 является привилегированным портом.
Ответ на обновленный вопрос
Не удалось назначить IP-адрес, поскольку, как оказалось, в вашем коде был неверный IP-адрес.После того, как вы отключили свою WiFi-сеть (предположительно), чтобы войти в мобильную сеть, используемый вами адрес был удален из системы, и ваш оператор беспроводной связи назначил вам другой адрес.Использование 0.0.0.0, по сути, говорит вашей серверной библиотеке: «Я хочу слушать все интерфейсы».(Другой вариант - выяснить ваш мобильный IP-адрес и использовать его вместо этого.) Но это подводит нас к последней проблеме:
Комментарий к вашей текущей проблеме
Может быть много причин, почему он не соединяется.Я подозреваю, что это, вероятно, NAT , как описано в этот вопрос .Короче говоря, очень мало приложений (если есть), использующих выбранную вами архитектуру (запуск сервера на телефоне абонента, подключенного к мобильной сети).Из-за NAT телефонам почти всегда приходится «набирать номер», чтобы сформировать соединение (в мобильной сети).И ваш сервер не набирает номер;он слушает.
Эти ограничения не будут применяться к вашей локальной сети WiFi, если вы не пересекаете границу NAT.
Чтобы решить эту проблему, вам, вероятно, потребуетсязнать архитектуру сети и некоторое обучение по отладке сети.Инструменты захвата, такие как Wireshark, очень помогают.
Если вам нужна дополнительная помощь по этому вопросу, и ни один из других ответов по SO не поможет вам, вероятно, лучше начать новый вопрос.