我正在使用Channel将音频数据发送到手持设备。但是,当我将数据写入channelstream时,程序有时会卡在我将数据写入流中的代码中,并抛出异常:
com.google.android.gms.wearable.ChannelIOException:频道在流完成之前意外关闭。
我没有找到与我类似的问题。有没有人对如何修复它有一些想法?非常感谢你的时间!
我用来将数据写入频道的代码是:
// OS is the output stream to write the data into the local file system on the android wear device.
if(null != os){
while(isWriting){
read = audioRecord.read(data, 0, recBufSize);
if(AudioRecord.ERROR_INVALID_OPERATION != read){
try {
if(sChannelOutputStream!=null) {
Log.d(Constants.TAG,"Schanneloutput write starts+ readsize:"+read);
sChannelOutputStream.write(data);
Log.d(Constants.TAG, "Schanneloutput write ends");
}
os.write(data);
} catch (IOException e) {
e.printStackTrace();
}
}
}
try {
os.close();
if(sChannelOutputStream!=null){
Log.d(Constants.TAG,"Schannel out close");
sChannelOutputStream.close();
sChannelOutputStream = null;
}
} catch (IOException e) {
e.printStackTrace();
}
}