Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未创建Android套接字_Android_Sockets - Fatal编程技术网

未创建Android套接字

未创建Android套接字,android,sockets,Android,Sockets,我正在开发一个Android应用程序,它将通过套接字将摄像头流发送到Node.js web服务器。当应用程序必须创建套接字时,应用程序不会执行try语句中的代码,但即使启动任何catch异常 MyThread.java protected Void doInBackground(Void... unused) { OutputStream os = null; try {Log.d("MyCameraApp", "HERE1"); mSocket = new

我正在开发一个Android应用程序,它将通过套接字将摄像头流发送到Node.js web服务器。当应用程序必须创建套接字时,应用程序不会执行try语句中的代码,但即使启动任何catch异常

MyThread.java

protected Void doInBackground(Void... unused) {

    OutputStream os = null;

    try {Log.d("MyCameraApp", "HERE1");
        mSocket = new Socket(ip, port);

        if (mSocket != null) {Log.d("MyCameraApp", "SOCKET CONNECTED");

            try {
                os = mSocket.getOutputStream();

                while (true) {
                    DataOutputStream dos = new DataOutputStream(os);
                    dos.writeInt(4);
                    dos.writeUTF("#@@#");
                    dos.writeInt(mFrameBuffer.size());
                    dos.writeUTF("-@@-");
                    dos.flush();
                    dos.write(mFrameBuffer.toByteArray());
                    dos.flush();
                    Thread.sleep(1000 / 15);
                }
            } catch (Exception e) {
                e.printStackTrace();

                try {
                    if (os != null)
                        os.close();
                } catch (Exception e2) {
                    e.printStackTrace();
                }

            }
        }
        else {
            Log.d("MyCameraApp", "SOCKET NULL");
        }

    }
    catch(UnknownHostException e) {
        Log.d("MyCameraApp", "CATCH SOCKET");
        e.printStackTrace();
    }
    catch (IOException e) {
        e.printStackTrace();
    }

    return null;
}
CameraActivity.java

try {
    mThread = new MyThread(getApplicationContext(), SERVERIP, SERVERPORT);
    mThread.execute();Log.d("MyCameraApp", "WELL DONE");
}
catch(Exception e) {
    e.printStackTrace();
    Log.d("MyCameraApp", "CATCH");
}
CameraActivity创建一个mThread对象,应用程序在创建套接字之前仅在try内显示日志“HERE1”,然后显示日志“很好”

我有一个基本的Node.js服务器,它只在相应的端口中侦听,其他什么都没有

怎么了


提前谢谢

Android设备通过wifi连接,pc通过以太网连接。。。不同的子网。

您是否为应用程序授予了相应的权限?是的,该应用程序具有访问Internet的权限。您可以共享变量ip和端口的值吗?您确定提供了它们吗?“即使启动任何捕获异常”是什么意思?值为ip=“192.168.235.11”和port=8080。我正在一个设备中测试应用程序,该设备连接到同一个网络,其中也连接到pc,其中是具有该ip地址的本地服务器。