Моя клиент-серверная программа на Java не работает
Я пытаюсь создать проект клиент / сервер Java, расположенный здесь: https://github.com/garlicPasta/dotServer И клиент, как они предлагают (Android), находится здесь: https://github.com/garlicPasta/dotViewer
По сути, предполагается передавать файл 3D-графики (скажем, этот файл.ply: https://www.dropbox.com/s/dfhyy9xa5i9o2fz/testPLY.ply?dl=0) с сервера на клиент Android.
Исполняемый файл сервера .jar
просмотрщик файлов и клиентов (.apk
) все уже есть. Моя проблема в том, что я не могу заставить программу клиент / сервер работать. Я просто не вижу ничего в приложении для Android и даже не уверен, что они подключены. Как и предполагалось, я запускаю их сервер с:
java -jar dotServer-all-1.0-SNAPSHOT.jar -f testPLY.ply
А в приложении для Android я также захожу в настройки, чтобы ввести IP-адрес сервера (IP-адрес моего ноутбука). Сказать 192.168.2.10
,
Может что-то не так с моими настройками?! Может кто-нибудь протестировать проект и сказать мне, могут ли они запустить и увидеть что-нибудь?
1 ответ
Настроить
Файл.ply был помещен в тот же каталог, что и сервер.jar. Я не экспериментировал с разными путями.
Команда сервера (предварительно созданный JAR):
java -jar dotServer-all-1.0-SNAPSHOT.jar -f example.ply
Формат адреса сервера (встроенные настройки клиента Android):
192.168.2.10:8080
вопросы
Мне удалось заставить эту настройку работать, однако было три проблемы:
Ваш пример (в формате ASCII) .ply по какой-то причине не работает с клиентом Android. Мне пришлось скачать отдельный (в двоичном формате) файл.ply, чтобы увидеть его в клиенте Android.
Этот заменяющий файл.ply показывал только красный для меня. Я не уверен, почему он не отображался нормально в клиенте Android, но этого было достаточно, чтобы убедиться, что у сервера и клиента было соединение. Пожалуйста, смотрите скриншот того, как это должно выглядеть в примечаниях ниже.
Предварительно собранный сервер.jar по умолчанию использует порт 8080 и, похоже, не учитывает параметр -p (порт).
Поэтому вам нужно добавить:8080 к IP (например, 192.168.2.10:8080) в настройках IP-адреса клиента Android, если вы используете текущий предварительно созданный сервер.jar.
Заметки
Чтобы убедиться, что Android-клиент подключен, вы можете просмотреть выходные данные сервера в рабочем окне для этого сервера. Если клиент Android подключен, при прокрутке сервер в режиме реального времени выводит сообщения "Исходный" и "Сжатый", касающиеся передачи данных.
Для справки вот как должен выглядеть файл.ply, который я использовал.