Как отправить данные из сокета датаграммы на сервер Android на сервер Node js? - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь запрограммировать онлайн-игру на android. Мой первый шаг - установить sh соединение между клиентом / android приложением и сервером. Сервер работает на Node js.

Сначала я пытаюсь отправить данные с клиента на сервер через мою локальную сеть. Проблема в том, что даже такая простая вещь не работает как-то. Сервер не может получать данные от клиента.

Клиент:

public class LongOperation extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {

    try {
        String messageStr = "Hallo Welt";

        DatagramSocket s = new DatagramSocket();
        InetAddress local = null;
        local = InetAddress.getByName("127.0.0.1");
        int msg_length = messageStr.length();
        byte[] message = messageStr.getBytes();

        DatagramPacket p = new DatagramPacket(message, msg_length, local, 12345);
        s.send(p);
        android.util.Log.w("UDP", "Works fine!");
    }
    catch (Exception e)
    {

        System.err.println("ERROR!                               !");
        e.printStackTrace();

    }

    return null;

}

Сервер:

'use strict';

var PORT = 12345;
var HOST = '127.0.0.1';

var dgram = require('dgram');
var server = dgram.createSocket('udp4');

server.on('listening', function () {
    var address = server.address();
    console.log('UDP Server listening on ' + address.address + ':' + address.port);
});

server.on('message', function (message, remote) {
    console.log(remote.address + ':' + remote.port + ' - ' + message);
});

server.bind(PORT, HOST);

Что я здесь игнорирую?

...