Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
552 views
in Technique[技术] by (71.8m points)

java - 无法从我的Android应用程序上的node.js服务器接收消息(Can not receive messages from my node.js server on my Android app)

So here, my problem is that I can very well send data from my android application to my server node.js who receives them, but on the contrary my android application does not receive messages from my server Node.js

(所以在这里,我的问题是我可以很好地将数据从我的android应用程序发送到接收它们的服务器node.js,但是相反,我的android应用程序无法从我的服务器Node.js接收消息)

Thank you in advance for your help !

(预先感谢您的帮助 !)

Server Node.JS

(服务器节点)

var mysql = require('mysql');
var app = require('express')();
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);

io.sockets.on('connect', function (socket) {

  socket.emit('message', 'Android Connected');
  console.log("Android Connected");
  socket.emit('message', 'Android Connected');

  socket.on('message', function(message){
    console.log("message received: " + message);
    socket.emit('message', 'message received');
  });

});

server.listen(8081)

Relevant part of the MainActivity in the onCreate

(onCreate中MainActivity的相关部分)

SocketBDD socket = new SocketBDD();

SocketBDD.java

(SocketBDD.java)

package com.example.myprojectapplication.ObjectClass;

import com.github.nkzawa.emitter.Emitter;
import com.github.nkzawa.socketio.client.IO;
import com.github.nkzawa.socketio.client.Socket;

import org.json.JSONException;
import org.json.JSONObject;

import java.net.URISyntaxException;

public class SocketBDD {

    private Socket socketBDD;

    public SocketBDD() {
        try {
            socketBDD = IO.socket("http://192.168.1.22:8081/");
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
        socketBDD.on("message", onNewMessage);
        socketBDD.connect();
    }

    private Emitter.Listener onNewMessage = new Emitter.Listener() {
        @Override
        public void call(Object... args) {
            JSONObject data = (JSONObject) args[0];
            String username;
            String message;
            try {
                username = data.getString("username");
                message = data.getString("message");
            } catch (JSONException e) {
                return;
            }

            // add the message to view
            //addMessage(username, message);
        }

    };

    public Socket getSocketBDD() {
        return socketBDD;
    }
}

  ask by MClt translate from so

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
等待大神答复

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...