2016-10-03 73 views
3

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

Socket.io代码:

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

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

现在对于mediarecorder:

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); 

我怎么去呢?帮帮我!

回答

2

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

ParcelFileDescriptor.fromSocket(socket).getFileDescriptor(); 

来源:android-developers

+0

ParcelFileDescriptor.fromSocket需要java.net.Socket中,socket.io创建io.socket.client.Socket 。我对Sockets.io使用这个依赖:https://github.com/socketio/socket.io-client-java – mehulmpt