Java(android)中socket.io的文件描述符?

Posted

技术标签:

【中文标题】Java(android)中socket.io的文件描述符?【英文标题】:File descriptor for socket.io in Java (android)? 【发布时间】:2017-02-11 19:08:45 【问题描述】:

我正在创建一个程序来记录屏幕并使用套接字通过套接字将数据发送到服务器。我已经在我的 sdcard 上成功实现了它,但是如何从 Socket.io 库创建一个套接字? setOutputFile 要求文件描述符。它在 socket.io 中的什么位置?

Socket.io 代码:

try 
            socket = IO.socket("http://192.168.0.105:3000");
            socket.connect();
// works

         catch (Exception e) 
            e.printStackTrace();
        

现在是媒体记录器:

mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.SURFACE);
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
// ... some more props...
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mMediaRecorder.setOutputFile(NEED A FILE DESCRIPTOR HERE);

我该怎么做?救命!

【问题讨论】:

【参考方案1】:

您可以使用以下方法提取套接字的文件描述符:

ParcelFileDescriptor.fromSocket(socket).getFileDescriptor(); 

来源:android-developers

【讨论】:

ParcelFileDescriptor.fromSocket 需要 java.net.Socket,socket.io 创建一个 io.socket.client.Socket。我将这个依赖项用于 Sockets.io:github.com/socketio/socket.io-client-java

以上是关于Java(android)中socket.io的文件描述符?的主要内容,如果未能解决你的问题,请参考以下文章

如何在android上使用socket.io和后台服务?

socket.io Android 库认证

Socket.IO-client.java 反复断开重连

在 Android 上发出 socket.io 消息

在 android 上解析 socket.io 数据。 (Gottox Socket.IO)

Android socket.io 编码