我正在尝试制作的 android 应用程序中使用两个库。安卓新手。该应用程序用于连接到串行设备并通过终端控制其控制台。
一个库用于设置串行连接、设置波特率等,还可以通过串行写入读取/数据。另一个用于创建终端会话。我的问题在于将这两者结合在一起以获得连接到串行设备的终端。
在终端库中,我需要提供一个InputStream
和OutputStream
向终端提供输入和输出。所以我必须调用setTermIn(java.io.InputStream)
并将setTermOut(java.io.OutputStream)
输入和输出流连接到模拟器。
然而,在串行库中,有两种发送和接收方法,它们处理字节数组。
sendData(byte[] data)
用于发送数据和用于接收数据的 dataListener。我必须实现这一点并onDataReceived(int id, byte[] data)
使用 id 作为设备名称来编写方法。
我没有通过串行发送字节数组的函数的源代码,那么如何将字节数组变成流以发送到我的终端?
编辑:
我认为这应该覆盖它,这就是我想要的?
Private USB2SerialAdapter mSelectedAdapter;
...
public void sendData(byte[] data)
{
//this should echo what I send to the terminal in the correct format
ByteArrayOutputStream bos = new ByteArrayOutputStream(data.length);
bos.write(data, 0, data.length);
setTermOut(bos);
//send data over serial using original sendData() method
mSelectedAdapter.sendData(data);
}