2016-10-03 74 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